将外键添加到 AspNetUser 表

2024-04-26

我创建了一个具有用户身份的 ASP.NET Core Razor Pages 应用程序。

创建的项目包括添加所有用户表的迁移,例如AspNetUser and AspNetRoles。但是,它不会为这些表创建任何代码模型。

现在我已经创建了自己的实体模型,我希望其中一些模型具有指向AspNetUser table.

我怎样才能做到这一点?平台是否将这些作为类公开在任何地方?我是否需要手动创建模型并尝试使它们与表格完全匹配?或者就此而言,我如何访问用户的所有详细信息?


默认身份使用IdentityUser,它不会暴露给项目代码,但您可以创建一个新的用户模型(例如AppUser)是从IdentityUser,然后将外键添加到新的用户模型中:

public class AppUser : IdentityUser
{
    public int AddressId { get; set; }
    public UserAddress Address { get; set; }
}

public class UserAddress
{
    public int Id { get; set; }

    // ...

    public string UserId { get; set; }
    public AppUser User { get; set; }
}

然后将启动中的 IdentityUser 替换为 AppUser :

services.AddDefaultIdentity<AppUser>();

然后创建新的迁移来创建新的用户表。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将外键添加到 AspNetUser 表 的相关文章

随机推荐