我将在本文后面从Identity 1.0.0迁移到Identity 2.0.1
生成的迁移代码与新的IdentityUser无关.它不会添加新列.
所以我创建了一个新项目并再次尝试,但迁移代码为空.
为了解决这个问题,我直接在SQL Server中进行了编辑,并在我的解决方案中再次导入了我的数据库.
现在我和你所看到的AspNetUser完全一样IdentityUser
IdentityUser
public virtual int AccessFailedCount { get; set; }
public virtual ICollection<TClaim> Claims { get; }
public virtual string Email { get; set; }
public virtual bool EmailConfirmed { get; set; }
public virtual TKey Id { get; set; }
public virtual bool LockoutEnabled { get; set; }
public virtual DateTime? LockoutEndDateUtc { get; set; }
public virtual ICollection<TLogin> Logins { get; }
public virtual string PasswordHash …Run Code Online (Sandbox Code Playgroud) UserManagerFactory = () => new UserManager<IdentityUser>(new UserStore<IdentityUser>());
OAuthOptions = new OAuthAuthorizationServerOptions
{
TokenEndpointPath = new PathString("/Token"),
Provider = new ApplicationOAuthProvider(PublicClientId, UserManagerFactory),
AuthorizeEndpointPath = new PathString("/api/AccountOwin/ExternalLogin"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(14),
AllowInsecureHttp = true
};
Run Code Online (Sandbox Code Playgroud)
IdentityUser,UserStore来自哪个实体框架.
我想使用我的数据库而不是本地数据库,我从本地数据库表生成"生成"脚本,我在自定义数据库中创建它们但是当我在下面的行中显示数据库上下文时:
UserManagerFactory = () => new UserManager<IdentityUser>(new UserStore<IdentityUser>(new MyCustomDBEntities()));
Run Code Online (Sandbox Code Playgroud)
MyCustomDBEntities是实体框架中的自定义数据库(edmx)我收到以下错误:"实体类型IdentityUser不是当前上下文模型的一部分"
我做错了什么?我应该创建自己的Usermanager吗?
public class MyCustomDBEntities : IdentityDbContext<IdentityUser>
{
public MyCustomDBEntities()
: base("name=ConnectionStringName")
{
}
}
Run Code Online (Sandbox Code Playgroud)