【问题标题】:Can't Locate Razor Pages in Default Blazor Server Side Project无法在默认 Blazor 服务器端项目中找到 Razor 页面
【发布时间】: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问题,环境是根据文档设置的

标签: c# asp.net-core blazor blazor-server-side


【解决方案1】:

如果您想自定义身份页面,您必须先将它们搭建出来。

假设您要自定义注册页面,您可以右键单击您的项目并选择:

添加 > 脚手架项目 > 从左侧菜单中选择身份,然后点击确定。

然后,您将获得所有可用页面的列表,并且您可以选择要覆盖的页面。完成此操作后,文件将出现在您的项目中,您可以像往常一样自定义它们。

【讨论】:

  • 我在解决方案后遇到了一些问题
  • 如果您按照更新答案上的说明进行操作
猜你喜欢
  • 1970-01-01
  • 2020-04-03
  • 2020-01-01
  • 2021-11-10
  • 1970-01-01
  • 1970-01-01
  • 2021-02-05
  • 2021-10-21
  • 2021-05-10
相关资源
最近更新 更多