1

だから私はインポートを行っているこの問題を抱えており、最初のテーブルを保存するときに、最初のテーブルの主キーがフォアキーではない別のテーブルにも保存される必要があります.EFがそれを行う方法ですか?EF5を使用しています

このようなものです。entity1.id が autoIncrement であることに注意してください

foreach (var entity1 in Entities1)
                {
                    DbContext.Entity1.Add(entity1);
                    var entity2 = new Entity2();
                    entity2.Entity1Id = entity1.id;
                    DbContext.Entity2.Add(entity2);
                }
                DbContext.SaveChanges();
4

1 に答える 1

1

SaveChanges が呼び出されるまで ID は生成されません。したがって、このコードを機能させるには、次のように書き直す必要があります。

DbContext.Entity1.Add(entity1);
DbContext.SaveChanges();
var entity2 = new Entity2();
entity2.Entity1Id = entity1.id;
DbContext.Entity2.Add(entity2);
DbContext.SaveChanges();
于 2013-09-13T21:31:42.507 に答える