私はEntity Framework 6を使用しています.Starエンティティがあり、次の簡単なコードを扱っています:
foreach(var name in names)
{
Star star = context.Stars
.Where(st => st.Name == name)
.FirstOrDefault();
if (star == null)
{
star = new Star();
star.Name = name;
context.Stars.Add(star);
star = context.Stars
.Where(st => st.Name == name)
.FirstOrDefault();
// Now it's NULL
}
}
まだ存在しない場合にのみ、新しいスターを DB に追加したい。残念ながら、SaveChanges() を使用しない同じセッション コンテキストでの後続のクエリでは、現在のセッションに追加されたエンティティを見つけることができません。どうすれば解決できますか?(各ステップで保存したくありません)。