2012-02-08 3 views
1

データアクセスパターンを改善しようとしています。すべてのlinq2sqlオブジェクトが変更されても、別々のファイルに定義されていても、変更は反映されます。

多くの異なるリポジトリクラス(データアクセスクラス)にわたって多くの変更を加えた後、1つのクラスからSubmitChangesを呼び出すだけで、トランザクションの一部として他のクラスを使用したとしても安全です。

ベストプラクティスlinq2sqlトランザクションのチュートリアルはありますか?また、SubmitChangesの組み込みトランザクションよりも複雑なソリューションが必要なのはどこですか?

答えて

2

同じDataContextに属するlinqからsqlオブジェクトへの変更は、どこから呼び出されても、SubmitChanges()が呼び出されたときにデータベースにコミットされます。

0

不思議、私は多くの異なるリポジトリ クラス(データアクセスクラス)を越え、多くの変更を行い、その後、ちょうどそれは私が 一環として、他のクラスを使用している場合でも、安全になり、 一つのクラスからでSubmitChangesを呼び出す場合私の取引の

はい、安全です。 SubmitChangesを一度呼び出すと、Linq-2-sqlはすべての更新を行い、linq-2-sqlによって作成された1つのトランザクションで更新します。ご自分で個別の取引を追加する必要はありません。

SubmitChangesのトランザクションより複雑な解決策が必要なのはどこですか?

私は、たとえば複数のデータベースにわたる別々のデータコンテキストを使用して更新したいと思うと思います。

関連する問題