SubmitChanges
Linq-to-SQL とSaveChanges
Entity Frameworkの技術的な違いは何ですか?
はクラスSubmitChanges
の概念でありDataContext
、SaveChanges
は のメソッドですObjectContext
。
他に違いはありますか?
ありがとう
SubmitChanges
Linq-to-SQL とSaveChanges
Entity Frameworkの技術的な違いは何ですか?
はクラスSubmitChanges
の概念でありDataContext
、SaveChanges
は のメソッドですObjectContext
。
他に違いはありますか?
ありがとう
MSDN から:
SaveChangesはトランザクション内で動作します。ダーティな ObjectStateEntry オブジェクトのいずれかを永続化できない場合、SaveChanges はそのトランザクションをロールバックし、例外をスローします。
SubmitChangesはトランザクションを開始し、SubmitChanges の実行中に例外が発生するとロールバックします。ただし、これはメモリ内の変更や DataContext によって追跡された変更をロールバックしません。これらの変更は手動でロールバックする必要があります。メモリ内の変更を破棄する場合は、DataContext の新しいインスタンスから開始できます。