我知道Asp.net MVC中有一个默认的_Layout.cshtml文件,就像Asp.net网站上的MasterPage一样。我可以在MVC应用程序中定义多个布局模板吗?如果是的话,如何制作呢?请给我一些代码示例。感谢。
答案 0 :(得分:0)
您可以创建多个布局页面并在不同视图中使用它。您可以通过在视图中提及Layout属性来提及视图中的新布局页面。
创建新的View
并将其命名为_AdminLayout.cshtml
文件夹下的Views/Shared
。您可以在那里为主页模板创建HTML标记。确保您的布局页面中有@RenderBody()
部分,以便在渲染时将普通视图的内容替换为此处。
<html>
<head>
</head>
<body>
<h1>My new Layout</h1>
@RenderBody()
</body>
</html>
如果你想在视图中使用这个布局,你可以这样做
@{
Layout = "~/Views/Shared/_AdminLayout.cshtml";
}
<p>The content here will be present inside the render body section of layout</p>
如果你想默认使用所有视图的新布局而不明确提及上面的代码,你可以在Views/_ViewStart.cshtml
文件
@{
Layout = "~/Views/Shared/_AdminLayout.cshtml";
}