【发布时间】:2020-01-25 07:06:55
【问题描述】:
对于以前版本的 Blazor,所有文件都是 cshtml 页面,并且能够使用类似于 MVC 项目的 _layout - 一切都很好。
但现在在新的 .NET Core 3.0 版本中,Blazor 模板切换到 *.razor 文件,这些文件是 razor 组件(不是 razor 页面)。并且布局现在是 Shared/MainLayout.razor 并通过 App.razor 文件中的路由应用:
<RouteView RouteData="@routeData" DefaultLayout="@typeof(MainLayout)" />
所以这会造成混乱。我们仍然可以将剃须刀页面(.cshtml 文件)添加到项目中,但它们没有应用布局。创建和维护 2 个独立的相同布局会很痛苦,1 个用于 razor 页面,1 个用于 razor 组件。我找不到这方面的任何指导。
有没有办法将剃须刀组件布局(Shared/MainLayout.razor)应用于同一项目内的剃须刀页面(.cshtml 文件)?如果不是,推荐的方法是什么?
【问题讨论】:
-
有类似的问题,因为我不得不搭建一些身份以更改登录和其他页面。如您所说,似乎没有办法继承布局。你有没有找到解决这个问题的方法?
标签: layout blazor .net-core-3.0