0

我有一个现有的 .Net 5 Blazor Server 应用程序。此时没有身份验证或授权。我正在尝试通过脚手架添加 Microsoft 身份,但当我尝试将身份脚手架到我无法解决的项目中时继续收到以下错误“所选代码生成器中出现错误'包还原失败。回滚包更改[MySolujtionName] 服务器。”

我试过的东西:

  • 批量构建 - 清洁解决方案
  • 批量构建 - 重建解决方案
  • 工具 --> 选项 --> Nuget 包管理器 --> 清除所有 Nuget 缓存然后重复上述步骤

到目前为止没有运气,我继续得到同样的错误。

4

3 回答 3

1

我尝试了一个新的 Blazor Server 项目,它适用于:

  1. 指定至少一个覆盖(我选择了LoginLogoutRegistration
  2. 指定 _Layout.cshtml 的完整路径(我使用过/Areas/Identity/Pages/Account/Manage/_Layout.cshtml
  3. 添加上下文
  4. 添加用户模型

然后脚手架按预期工作。

我得到以下结构:

在此处输入图像描述

脚手架生成的用户模型类将是:

namespace Test2.Areas.Identity.Data
{
    // Add profile data for application users by adding properties to the Test2User class
    public class Test2User : IdentityUser
    {
    }
}

更新

我在 Visual Studio 生成器中发现了一个错误。
从现有项目中搭建身份页面的唯一可能性是通过命令行执行搭建过程。

下面是一个命令行示例:

dotnet aspnet-codegenerator identity -dc TestWasmAuthIndividual.Server.Data.ApplicationDbContext --files "Account.Register;Account.Login;Account.Logout;Account.Manage.PersonalData" --force

您需要从服务器项目执行此命令行。

于 2021-08-16T16:51:53.100 回答
0

我从上面的 Nicolas Biada 复制并粘贴了此内容,以指出这是实际分辨率的部分。

更新

我在 Visual Studio 生成器中发现了一个错误。从现有项目中搭建身份页面的唯一可能性是通过命令行执行搭建过程。

下面是一个命令行示例:

dotnet aspnet-codegenerator 身份 -dc TestWasmAuthIndividual.Server.Data.ApplicationDbContext --files "Account.Register;Account.Login;Account.Logout;Account.Manage.PersonalData" --force

您需要从服务器项目执行此命令行。

于 2021-08-23T09:55:02.137 回答
0

我正在使用 Blazor 服务器。我以 Identity 模板开始我的项目,当我尝试上面的命令行解决方案时出现错误。

我在尝试搭建页面后遇到的错误让我认为搭建者并不真正了解 Blazor 周围的约定。由于组件生命周期方法、_ViewImports.cshtml 中的单例引用以及对组件本身的引用等原因,脚手架无法构建(即使正常构建完成)... Screengrab 1 Screengrab 2

我正在使用 Net 5.0,我不确定这是否已经在 Net 6.0 中解决了。

我最终删除了我的 Components 文件夹以及对它们的所有引用。脚手架所有页面(所以我不必再次这样做),然后使用版本控制恢复文件夹。

于 2022-01-31T02:08:33.110 回答