欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MVC部分视图

程序员文章站 2022-04-24 16:51:16
// 以视图名使用当前文件夹下的视图 // 如果没有找到,则搜索 Shared 文件夹 @Html.Partial("ViewName") @Html.Partial(“视图”)直接传的是视图,后台可不用写Action; // 这个名称的视图必须在相同文件夹下 @Html.Partial("View ......

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

// 如果没有找到,则搜索 Shared 文件夹
@Html.Partial("ViewName")
 
@Html.Partial(“视图”)直接传的是视图,后台可不用写Action;
 
// 这个名称的视图必须在相同文件夹下
@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");