MVC部分视图

// 以视图名使用当前文件夹下的视图

// 如果没有找到,则搜索 Shared 文件夹
@Html.Partial("ViewName")
 
@Html.Partial(“视图”)直接传的是视图,后台可不用写Action;
 
  //return View("Detail");   也是直接进的试图,不进方法;
 
// 这个名称的视图必须在相同文件夹下
@Html.Partial("ViewName.cshtml")
 
// 依据应用根路径定位视图// 以 "/" 或 "~/" 开头的路径代表应用根路径
@Html.Partial("~/Views/Folder/ViewName.cshtml")
@Html.Partial("/Views/Folder/ViewName.cshtml")
 
// 使用相对路径定位视图
@Html.Partial("../Account/LoginPartial.cshtml")
 
1、带有Render的方法返回值是void,在方法内部进行输出;不带的返回值类型为MvcHtmlString,所以只能这样使用:
@Html.Partial 对应 @{Html.RenderPartial(....);}
@Html.Action 对应 @{Html.RenderAction(....);}
2、Html.Partial可以直接提供用户控件名作为参数,而Html.Action需要有对应的Action,在Action内部返回PartailResult(即retun PartialView())。
3、对于简单的没有任何逻辑的用户控件,推荐使用Html.Partial;对于需要设置一些Model的用户控件,推荐使用Html.Action。当然,有Model数据也是可以使用Html.Partial方法的,可以看方法的重载。
4、使用Html.Action有个好处,就是可以根据不同的场景选择不同的用户控件。
比如:
@Html.Action("UserInfoControl")
在对应的UserInfoControl这个Action中,在用户未登录的时候,可以retun PartialView("LogOnUserControl");登录后,可以retun PartialView("UserInfoControl");
posted @ 2018-03-25 16:22  哈根达斯  阅读(314)  评论(0编辑  收藏  举报