Car*_*nez 7 asp.net asp.net-mvc entity-framework asp.net-identity
我无法理解整个ASP.Net Identity框架,我首先尝试将Identity 1.0集成到现有应用程序中,但我最终得到了2个DbContext类,我的应用程序数据在MyDbContext上,而IdentityDbContext上的Identity用户数据.
我想对我的应用程序数据和身份相关数据使用单个DbContext,我在一个不同的问题上发现我可以像使用DbContext一样使用IdentityDbContext; 但是,我想我错过了一些东西.
我正在使用Identity团队的示例项目
PM> Install-Package Microsoft.AspNet.Identity.Samples -Pre
Run Code Online (Sandbox Code Playgroud)
并尝试将DbSet属性插入ApplicationDbContext
public class ApplicationDbContext : IdentityDbContext
{
public ApplicationDbContext()
: base("DefaultConnection")
{
}
static ApplicationDbContext()
{
// Set the database intializer which is run once during application start
// This seeds the database with admin user credentials and admin role
Database.SetInitializer<ApplicationDbContext>(new ApplicationDbInitializer());
}
public virtual DbSet<Student> students { get; set; }
public virtual DbSet<Teachers> teachers { get; set; }
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用ApplicationDbInitializer种子方法来填充这两个表,如下所示:
Student s = new Student { Name = "John" ... };
db.students.Add(s);
db.SaveChanges();
Run Code Online (Sandbox Code Playgroud)
但EF似乎没有创建那两个表,并且种子方法没有被调用,发生了什么?
编辑:
好吧,我需要运行使用EF数据库的代码来删除并重新创建数据库.
使用IdentityDbContext管理我的所有应用程序数据是否有任何开销?使用IdentityDbContext和使用通用版本IdentityDbContext <IdentityUser>有什么区别?
| 归档时间: |
|
| 查看次数: |
1288 次 |
| 最近记录: |