Asp.net core mvc 在ASP.NET Core中注册第一个具有特定角色的用户(如何修改AccountController操作)

Asp.net core mvc 在ASP.NET Core中注册第一个具有特定角色的用户(如何修改AccountController操作),asp.net-core-mvc,asp.net-identity,Asp.net Core Mvc,Asp.net Identity,我正在将ASP.NET MVC 5 web应用程序迁移到ASP.NET Core(使用.NET 5)。如果某个用户是第一个注册用户(当数据库中没有数据时),我想设置该用户的角色。我将身份验证(Identity to user authentication)用于ApplicationUser:IdentityUserclass,添加新属性) 在以前的版本中,我修改了AccountController文件: Register操作已删除(只有web的所有者/管理员才能注册新用户) 我添加了一个新操作

我正在将ASP.NET MVC 5 web应用程序迁移到ASP.NET Core(使用.NET 5)。如果某个用户是第一个注册用户(当数据库中没有数据时),我想设置该用户的角色。我将身份验证(Identity to user authentication)用于
ApplicationUser:IdentityUser
class,添加新属性)

在以前的版本中,我修改了AccountController文件:

  • Register
    操作已删除(只有web的所有者/管理员才能注册新用户)
  • 我添加了一个新操作
    SetFirstAdmin
    ,类似于删除
    Register
    向注册用户添加管理员角色(将名字和姓氏添加为注册表字段)
  • Login
    action中,首先我检查了是否有具有管理员角色的用户。如果没有管理员,用户将被重定向到
    SetFirstAdmin
    操作

我注意到
AccountController
缺少ASP.NET核心项目(我认为是ASP.NET核心2.1),所以我不知道如何禁用注册、更改登录操作以及向
AccountCotroller
添加新操作。可能吗?或者是否有其他方法为第一个用户设置角色?

Asp.net core Identity使用添加和查看生成的文件以查看与Identity的模板交互:右键单击项目>添加>新建脚手架项目。从“添加新脚手架项目”对话框的左窗格中,选择“标识”>“添加”。在“添加标识”对话框中,选择所需的标识页。之后,您可以从Areas>Identity>Pages>Account文件夹中找到relates页面。然后,在注册页面中,您可以设置角色。谢谢@ZhiLv,当我选择Account\Login和Account\register时,我得到以下错误:运行所选代码生成器时出错:“包还原失败。”。正在回滚“MyProjectName”的包更改