我想使用OWIN
。但是我需要在用户表中添加更多列。我还想使用NHibernate
。
这样做的方法是什么?
从OWIN
扩展用户表。我不知道这是否可能。其次,我不知道是否可以解决缓存问题。
或者,我使用" UserID"为我自己的用户数据制作第二个用户表。作为外键的属性引用OWIN
的用户表?
答案 0 :(得分:0)
我说无论如何都要使用Asp.NET Identity。如果您想为ApplicationUser
添加更多属性,可以按以下方式添加:
public class ApplicationUser : IdentityUser
{
public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager)
{
// Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType
var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie);
// Add custom user claims here
return userIdentity;
}
// Your Extended Properties
public string FirstName{ get; set; }
public string LastName{ get; set; }
//...
}
您甚至可以为User.Identity
创建方法,以便像GetUserId()
方法一样轻松获取属性的值。看看this。