@ITのサイトの連載:Entity Framework 4.1入門
第2回 EF 4.1の規約とデータベースの初期化方法
を参考にSeedメソッドで初期化したいのですが
ブレークポイントを設定してもそこで止まらずに
処理が進んでしています。
わかる方がいれば教えていただけますか?
VS2017
NETFramework,Version=v4.6.1
EntityFramework,version="6.2.0"
form1.cs public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // 常にデータベースを再生成する Database.SetInitializer(new TestDbInitializer()); } }
TestDbContext.cs public class TestDbInitializer : DropCreateDatabaseAlways<TestDbContext> { public TestDbInitializer() { } protected override void Seed(TestDbContext context) { Debug.WriteLine("test"); // 基底クラスのSeedメソッド呼び出し base.Seed(context); new List<ClientStatus> { new ClientStatus() { Status = ClientStatusNames.Test1, }, new ClientStatus() { Status = ClientStatusNames.Test2, }, }.ForEach(u => context.ClientStatuses.Add(u)); //context.Prefectures.AddOrUpdate(p => p.Code, entity); // ↑ListのForEachメソッドとラムダ式でエンティティを一括追加 // 変更をデータベースに反映 context.SaveChanges(); } } public class TestDbContext : DbContext { public DbSet<ClientStatus> ClientStatuses { get; set; } }
ClientStatus.cs public enum ClientStatusNames { Test1, Test2, } public class ClientStatus { public int Id { get; set; } public ClientStatusNames Status { get; set; } }
C# のタグをつけてください。
回答1件
あなたの回答
tips
プレビュー