MVC - 如何为特定文件夹使用另一个更新的_Layout和_ViewStart文件?

时间:2014-03-04 08:00:09

标签: c# asp.net-mvc razor model-view-controller asp.net-mvc-5

如下所示,我的MVC站点在我的Views文件夹的根目录中包含_ViewStart.cshtml文件,该文件使用Shared文件夹中的_Layout.cshtml来共享页眉和页脚的布局。但每个页面的主要内容都不同。

enter image description here

但是现在我的Category文件夹页面的主内容布局相同。所以我的问题是,我如何使用另一个更新的_Layout和_ViewStart文件用于我的_Layout.cshtml和_ViewStart.cshtml文件也使用页眉和页脚的类别文件夹页面,或者我需要为类别文件夹中的每个页面指定相同的部分?我想在类别根目录文件夹中使用_ViewStart.cshtml文件,它可以共享类别页面的主要内容布局。

也许这看起来有点令人困惑,但我希望你能理解我想要问的内容。

1 个答案:

答案 0 :(得分:1)

您在类别文件夹中创建_CategoryLayout.cshtml并将以下内容放在类别页面中:

  

@ {       布局="〜/ Views / Category / _CategoryLayout.cshtml&#34 ;;   }

然后,您可以使用此布局向页面添加页脚和页眉,反过来此布局页面(_CategoryLayout)可以有自己的布局。因此,您可以在该布局中添加以下代码:

  

@ {       布局="〜/ Views / Shared / _Layout.cshtml&#34 ;;   }

这样它就可以使用这两种布局。您可以通过应用正确的部分来获取更多信息,不要忘记填充页面本身的部分,您需要在每个布局层中定义部分,直到您显示它。因此,如果您要在类别页面中使用CSS部分,则还需要在categorylayout中定义它。

Structure of nested layouts