当应用程序是 Razor Pages 时如何在视图中使用 _Layout.cshtml
How to use _Layout.cshtml in View when application is Razor Pages
在 Razor Pages 中,默认包含 _Layout.chstml(据我所知某处有设置)。如果您不想在 Razor 页面上放置 _Layout 模板:
@{
Layout = null;
}
但是,在 MVC 视图中,您引用 _Layout.chstml:
@{
ViewBag.Title = "ThankYou";
Layout = "~/Views/Shared/_Layout.cshtml";
}
我什至不确定是否可以使用相同的 _Layout。我希望如此,我只是没有 Razor Pages 应用程序(.NET Core 2.2 Razor Pages)中视图的路由语法。
我试过了:
@{
ViewBag.Title = "ThankYou";
Layout = "/Shared/_Layout.cshtml";
}
但它触发了“未找到”错误。
假设您要在 MVC 视图中使用 Razor Pages 布局,请像在您的 MVC 示例中一样使用虚拟文件路径:
@{
ViewBag.Title = "ThankYou";
Layout = "~/Pages/Shared/_Layout.cshtml";
}
顺便说一句,Razor Pages 应用程序中布局页面的 "setting" 在 _ViewStart.cshtml file 中。默认版本包括以下内容:
@{
Layout = "_Layout";
}
在 Razor Pages 中,默认包含 _Layout.chstml(据我所知某处有设置)。如果您不想在 Razor 页面上放置 _Layout 模板:
@{
Layout = null;
}
但是,在 MVC 视图中,您引用 _Layout.chstml:
@{
ViewBag.Title = "ThankYou";
Layout = "~/Views/Shared/_Layout.cshtml";
}
我什至不确定是否可以使用相同的 _Layout。我希望如此,我只是没有 Razor Pages 应用程序(.NET Core 2.2 Razor Pages)中视图的路由语法。
我试过了:
@{
ViewBag.Title = "ThankYou";
Layout = "/Shared/_Layout.cshtml";
}
但它触发了“未找到”错误。
假设您要在 MVC 视图中使用 Razor Pages 布局,请像在您的 MVC 示例中一样使用虚拟文件路径:
@{
ViewBag.Title = "ThankYou";
Layout = "~/Pages/Shared/_Layout.cshtml";
}
顺便说一句,Razor Pages 应用程序中布局页面的 "setting" 在 _ViewStart.cshtml file 中。默认版本包括以下内容:
@{
Layout = "_Layout";
}