.NET - 身份不包含自定义字段的定义

.NET - Identity does not contain a definition for the custom field

我正在做一个身份项目,我现在正在尝试创建一个端点来获取用户配置文件。我希望每个个人资料都有个人资料图片。

我在名为 User 的新模型 class 中添加了自定义字段,如下所示:

public class User : IdentityUser
    {
        public string? ProfileImage { get; set; }
    }

我也在我的startup.cs

中添加了
services.AddIdentity<User, IdentityRole>()
                .AddEntityFrameworkStores<AppDbContext>()
                .AddDefaultTokenProviders();

还有 AppDbContext

public class AppDbContext : IdentityDbContext<User>
    {

        public AppDbContext([NotNull] DbContextOptions options) : base(options) {}

        protected override void OnModelCreating(ModelBuilder builder)
        {
            base.OnModelCreating(builder);
        }
    }

我还有 AutoMapper 将我的 UserDto 映射到用户 class。

但是,在我的 AuthController 中,我试图创建一个端点来获取具有 Id 的用户,但我收到一个错误,指出 IdentityUser 不包含 ProfileImage 的定义。

[HttpGet("getUser/{id}")]
        public async Task<ActionResult> GetCurrentUser(string id)
        {
            var user = await userManager.FindByIdAsync(id);
            var model = new UserDto()
            {
                Id = user.Id,
                UserName = user.Email,
                Email = user.Email,
                ProfileImage = user.ProfileImage <--- error on this line
            };

            return Ok(model);
        }

我错过了什么,我能做些什么来解决这个问题?

非常感谢!

这里的问题是我将 IdentityUser 放在 UserManagerSignInManager 中,而不是我应该使用我的 User class

我从这个改的

private readonly UserManager<IdentityUser> userManager;
        private readonly SignInManager<IdentityUser> signInManager;
      

        public AuthController(UserManager<IdentityUser> userManager, 
            SignInManager<IdentityUser> signInManager)
        {
            this.userManager = userManager;
            this.signInManager = signInManager;
        }

对此

private readonly UserManager<User> userManager;
        private readonly SignInManager<User> signInManager;
       
        public AuthController(UserManager<User> userManager, 
            SignInManager<User> signInManager)
        {
            this.userManager = userManager;
            this.signInManager = signInManager;
        }