このコードでは、IsMale
フィールドがTable1
およびName
フィールドがTable2
に変更されます。変更は、Entity Frameworkの変更を保存した後にデータベースの特定のテーブルにコミットされません
Table1
の変更が適用されますが、Table2
の変更は適用されません。 context.SaveChanges()
返信2
しかしTable2
はデータベース で更新されていません。
using (var context = new ctxdB())
{
var tbl1 = context.Table1.FirstOrDefault(c => c.Token == token);
var tbl2 = context.Table2.Find(id);
tbl1.IsMale = true;
tbl2.Name = "New name";
context.Entry(tbl1).State = EntityState.Modified;
context.Entry(tbl2).State = EntityState.Modified;
context.SaveChanges();
}
テーブル2での「検索」は何か見つかっていますか? –
@ Locke125、もちろんそうです。 – msitworld
btw、FirstOrDefault()で取得するエンティティで、エンティティの状態を手動で設定する必要はありません。 –