2009-03-08 9 views
1

トランザクションをサポートしていないリモートサードパーティ製ストレージソリューションを使用しています。独自のトランザクションプロバイダを実装するための最良のオプション

私は、このソリューションのために、失敗していないエンティティの挿入/更新を書き直し/削除するだけで、.NETで独自の擬似ACIDを実装したいのですが、他の挿入/更新はトランザクションコンテキスト内で失敗します。

System.Transactions名前空間に何らかの形で統合するのが有益で簡単です(誰でも恐怖や成功の話をしていますか?それは私がやろうとしていることの一般的な考え方と互換ですか?インターフェイス?

編集:私はSystem.Transactionsと統合するためにMSDNでImplementing a Resource Managerを見つけましたが、これは行く方法ですか?または、私はちょうどこのパターンのカスタムモデルをモデル化する必要がありますか?

編集:Hibernateのdocsを読んで、それはまさに私が間違いなく望むパターンです。私はちょうどNHibernateをダウンロードし、すべてのSQLコードをトリムするか、その基本クラスとインターフェイスを使用し、私のカスタムCRUDコードを実装するか、それは非常にSQL依存ですか?私は自分のメソッドのいくつかをドキュメントに準拠させるよう書き直しています。

答えて

1

;-)あなたの編集を見たとき、私はちょうどそのリンクを追加していました。

私はおそらくそのオプションを最初に探求します。利用可能な拡張可能なフレームワークがあるときはいつでも、自分で構築することを躊躇してください。

1

リソースマネージャを実装する必要があります。システムの取得。トランザクションのサポートは小さなものではありません。これにより、デベロッパーは、同じ作業単位で、リソースだけでなくOracleにも更新をコミットすることができます。ライブラリーを構築してリソース・マネージャーにする場合は、無料で入手できます。

関連する問題