如何在MVC 6 Vnext中的不同区域设置相同的布局,
我在每个区域使用_ViewImports.cshmlt和_ViewStart.cshtml
_ViewStart.cshtml中的
@{
Layout = "_/Views/Shared/_Layout.cshtml";
}
和_ViewImports.cshtml
@using Cross2Enterprise.Administrador
@using Cross2Enterprise.Administrador.Models
@using Microsoft.Framework.OptionsModel
@addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"
答案 0 :(得分:6)
我认为这是你的情景:
\Areas
文件夹为此,请使用以下项目布局:
\Areas\Home
\Areas\Home\Controllers
\Areas\Home\Views
\Areas\_ViewStart.cshtml
\Views
\Views\Shared\
\Views\Shared\_Layout1.cshtml
\Views\Shared\_Layout2.cshtml
然后在文件\Areas\_ViewStart.cshtml
中,您可以拥有以下内容:
@{
Layout = "_Layout1";
}
这会使所有区域的所有观看次数都使用\Views\Shared\_Layout1.cshtml
。
注意:您可以 NOT 将_ViewStart.cshtml
放在以下位置:
\Views\_ViewStart.cshtml
\Views\Shared\_ViewStart.cshtml
注意:您 CAN 将_ViewStart.cshtml
放在以下位置:
\Areas\Home\_ViewStart.cshtml
注意:这也适用于_ViewImports.cshtml
答案 1 :(得分:5)
我只是摒弃了明显的事情......你试过......? (我只看了一些关于VNext的事情)
Layout = "~/Views/Shared/_Layout.cshtml";