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);
}

  

 

posted @ 2019-09-03 15:11  苦逼的猿人  阅读(261)  评论(0编辑  收藏  举报