0
mvcで小さなテストサイトを作成しようとしています。 私は、モデルを作成しました:asp.net mvcのデータベース初期化エラー5
public class Subject_Master
{
public Subject_Master()
{
}
public Subject_Master(string Subject_Name)
{
this.Subject_Name = Subject_Name;
}
public int Subject_MasterId { get; set; }
public string Subject_Name { get; set; }
}
コンテキストです:
public class MyContext : DbContext
{
public DbSet<StudentAccount> StudentAccount { get; set; }
public DbSet<Subject_Master> Subject_Master { get; set; }
}
初期化子:
namespace MyProj.Models
{
public class DBInitializer:DropCreateDatabaseIfModelChanges<XpertsContext>
{
protected override void Seed(XpertsContext context)
{
var Subject_Master_List = new List<Subject_Master>();
Subject_Master_List.Add(new Subject_Master("English"));
Subject_Master_List.Add(new Subject_Master("Hindi"));
Subject_Master_List.Add(new Subject_Master("Bengali"));
foreach (var subject in Subject_Master_List)
{
context.Subject_Master.Add(subject);
}
context.SaveChanges();
}
}
}
データベースが作成されますが、データが挿入取得されていません。
私は間違っていますか?
私はそれをしました。しかし、今はプロジェクトを実行したときにデータを挿入しませんでした。どのくらい私は、データベース全体を削除し、プロジェクトを再実行した。それが挿入されました。何らかの方法がありますか?dbが既に作成されている場合、dbを削除/再作成することなくデータが挿入されますか? – Priyabrata
これは普通です。あなたがどのクラスから派生しているのか見てください: 'DropCreateDatabaseIfModelChanges'。 'IfModelChanges'の部分は重要です。コンテキストが最初になったときにデータベースを常に再作成したい場合は、おそらく['DropCreateDatabaseAlways'](https://msdn.microsoft.com/en-us/library/gg679506(v=11113).aspx)が必要です中古。 –
Thanx a bunch !! – Priyabrata