Html.Partial和Html.RenderPartial和Html.RenderAction区别
1.Html.Partical 把View页或模板解析成字符串然后输出到渲染页面上
@Html.Partical("viewxxx")
2.Html.RenderPartical则是输出到HttpContext 上下文上,可操作性比较灵活,可从引用的页面传值过去
@Html.RenderPartical("view",ViewsData["name"])
3.@Html.RenderAction是通过Controller中的Action来调用MVC用户控件,是直接重新执行一次Controller → Model → View的顺序,然后把产生的页面带回到原来的View中再回传,
所以Html.RenderAction中传递的参数是执行的Controller和Action名称。若是在控制器中的某个方法只能让Html.RenderAction()调用时,可以在方法上添加特性[ChildActionOnly],其它的地方无法访问
使用:@{Html.RenderAction("HotKw", "Keyword");}
[ChildActionOnly] public ActionResult ArticleMenu() { var item = _db.Classes.ToList(); return PartialView(item); }