我创建了一个具有用户身份的 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(使用前将#替换为@)