无法在默认 Blazor 服务器端项目中找到 Razor 页面
Posted
技术标签:
【中文标题】无法在默认 Blazor 服务器端项目中找到 Razor 页面【英文标题】:Can't Locate Razor Pages in Default Blazor Server Side Project 【发布时间】:2020-01-07 02:42:55 【问题描述】:(超级初学者提醒)
在“默认”Blazor 服务器端项目中 使用内置登录 LoginDisplay.razor 文件包含
<AuthorizeView>
<Authorized>
<a href="Identity/Account/Manage">Hello, @context.User.Identity.Name!</a>
<form method="post" action="Identity/Account/LogOut">
<button type="submit" class="nav-link btn btn-link">Log out</button>
</form>
</Authorized>
<NotAuthorized>
<a href="Identity/Account/Register">Register</a>
<a href="Identity/Account/Login">Log in</a>
</NotAuthorized>
我们以“身份/帐户/注册”为例:
如果我查看“身份”区域,我发现的唯一页面是
“帐户”和“共享”;没有一个包含上述页面。
我错过了什么?
谢谢
[编辑] 跟随 Chris Sainty 回答(谢谢)
但我遇到了这种情况:
https://github.com/aspnet/AspNetCore/issues/13120
尝试这个解决方案
步骤,基于 Preview8 服务器端项目,带有“个人 用户帐户”:
在 Startup 中暂时禁用此行://endpoints.MapBlazorHub(selector: "app"); 运行脚手架向导,添加所需的任何页面 再次取消对 endpoints.MapBlazorHub() 行的注释 删除 Pages/_ViewStart.cshtml 修复Pages/Shared/_Layout.cshtml,第一行缺少@using 修复Pages/Shared/_Loginpartial.cshtml,第二行缺少@inject
【问题讨论】:
上面的链接没有解决您的问题吗?您是否安装了最新的 VS 2019 预览版? 我正在尝试解决方案,但这是一个开放的github问题,环境是根据文档设置的 相关答案:***.com/a/57663817 【参考方案1】:如果您想自定义身份页面,您必须先将它们搭建出来。
假设您要自定义注册页面,您可以右键单击您的项目并选择:
添加 > 脚手架项目 > 从左侧菜单中选择身份,然后点击确定。
然后,您将获得所有可用页面的列表,并且您可以选择要覆盖的页面。完成此操作后,文件将出现在您的项目中,您可以像往常一样自定义它们。
【讨论】:
我在解决方案后遇到了一些问题 如果您按照更新答案上的说明进行操作以上是关于无法在默认 Blazor 服务器端项目中找到 Razor 页面的主要内容,如果未能解决你的问题,请参考以下文章
将服务器端 Blazor 添加到现有 MVC Core 应用程序