Vin*_*mar 2 asp.net-mvc asp.net-mvc-4
我需要在我的MVC应用程序中实现母版页asp.net概念,当我用Google搜索时,我可以理解可以通过使用MVC中的布局来获得相同的内容。
我的应用程序的〜Views \ Shared_Layout.cshtml下有_Layout文件。
为了将内容包含在我的员工详细信息页面的布局文件中,我添加了以下内容:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
ViewBag.Title = "DisplayEmployeeList";
}
Run Code Online (Sandbox Code Playgroud)
我想知道,是否要在所有页面中单独重复上面的代码,还是可以在全局某处重复执行,以便在所有页面上都可以看到它。
不可以,您可以一次为所有页面设置它。
在您的Views文件夹中,应该有一个 _ViewStart.cshtml
只需参考_Layout.cshtml即可,您的所有视图都将从此继承。
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
Run Code Online (Sandbox Code Playgroud)
Scott Guthrie的进一步解释:http : //weblogs.asp.net/scottgu/archive/2010/10/22/asp-net-mvc-3-layouts.aspx
并直接从asp.net: http://www.asp.net/whitepapers/add-mobile-pages-to-your-aspnet-web-forms-mvc-application
/编辑:
如果要为ViewStart带来一些逻辑,则可以(例如)检查请求是否来自移动设备,并因此使用其他布局:
@{
if (Request.Browser.IsMobileDevice)
{
Layout = "~/Views/Shared/_MobileLayout.cshtml";
}
else
{
Layout = "~/Views/Shared/_Layout.cshtml";
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4172 次 |
| 最近记录: |