Tüm ASP.Net Kimliği çerçevesini anlamada sorun yaşıyorum, önce Kimlik 1.0'ı varolan bir uygulamaya entegre etmeyi denedim, ancak 2 DbContext sınıfı ile bittim, uygulama verilerim MyDbContext üzerindeydi, ve IdentityDbContext'teki Identity kullanıcı verileri.ASP.NET Kimlik 2.0'ı Genişletme
Hem uygulama verileri hem de Kimlik ile ilgili veriler için tek bir DbContext kullanmak istiyorum ve farklı bir soruda IdentityDbContext'i DbContext'i kullandığım gibi kullanabileceğimi buldum; Ancak, sanırım bir şey özlüyorum.
Ben Kimlik ekibi
PM> Install-Package Microsoft.AspNet.Identity.Samples -Pre
örnek projesinin kullanıldığı ve 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();
}
}
O 2 doldurmak için ApplicationDbInitializer tohum yöntemi kullanıyorum için DbSet özelliklerini eklemek için çalıştı ediyorum tabloları, bunun gibi bir şey:
Student s = new Student { Name = "John" ... };
db.students.Add(s);
db.SaveChanges();
Ama EF görünmüyor Bu 2 tabloyu oluşturmak için, tohum yöntemi çağrılmıyor, neler oluyor?
DÜZENLEME:
Eh, EF bırakın ve veritabanı yeniden için veritabanını kullanan bir kod çalıştırmak için gerekli.
Tüm uygulama verilerini yönetmek için IdentityDbContext'in kullanıldığı herhangi bir ek yük var mı? IdentityDbContext kullanımı ile IdentityDbContext < IdentityUser> genel sürümünü kullanma arasındaki fark nedir?