无法在默认 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 页面的主要内容,如果未能解决你的问题,请参考以下文章