21

SubmitChangesLinq-to-SQL とSaveChangesEntity Frameworkの技術的な違いは何ですか?

はクラスSubmitChangesの概念でありDataContextSaveChangesは のメソッドですObjectContext

他に違いはありますか?

ありがとう

4

1 に答える 1

34

MSDN から:

SaveChangesはトランザクション内で動作します。ダーティな ObjectStateEntry オブジェクトのいずれかを永続化できない場合、SaveChanges はそのトランザクションをロールバックし、例外をスローします。

SubmitChangesはトランザクションを開始し、SubmitChanges の実行中に例外が発生するとロールバックします。ただし、これはメモリ内の変更や DataContext によって追跡された変更をロールバックしません。これらの変更は手動でロールバックする必要があります。メモリ内の変更を破棄する場合は、DataContext の新しいインスタンスから開始できます。

于 2012-06-11T13:04:07.250 に答える