我的问题是,当我运行我的网络应用程序(并删除数据库)时,我的数据库初始化程序工作正常,但是当我输入Add-Migration Initial
& Update-Database
,只创建没有初始化数据的数据库!!
我有以下代码: (这是在PROJ1.EF项目中)
public class StudentsContext : DbContext
{
public virtual DbSet<Student> Students { get; set; }
public StudentsContext ()
: base("StudentsContext")
{
Database.SetInitializer<StudentsContext>(new StudentsContextInitializer());
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
}
以下是我的StudentsContextInitializer
:
public class StudentsContextInitializer : DropCreateDatabaseAlways<StudentsContext>
{
protected override void Seed(StudentsContext context)
{
var students = new List<Student>
{
new Student("Alex ABC"),
new Student("John Doe")
};
students.ForEach(s => context.Students.Add(s));
context.SaveChanges();
base.Seed(context);
}
}
我的web.config
在其<entityFramework>
标记中包含以下条目:
(这是在PROJ1.Web项目中)
<contexts>
<context type="PROJ1.EF.StudentContext, PROJ1.EF">
<databaseInitializer type="PROJ1.EF.StudentsInitializer, PROJ1.EF" />
</context>
</contexts>
请帮忙。