sql >> データベース >  >> NoSQL >> MongoDB

MongoDBを使用したリポジトリパターン-1つのトランザクションで複数の作業単位

    私はMongoDBを使用したことはありません。それについては何も知りません。私はTransactionScopeに関してのみ答えています;だから、これがあなたを助けるかどうかわからない。

    Magic OfTransactionScope を参照してください。 。 IMO、探すべき3つの要素があります:

    1. データベースへの接続は内部で開く必要があります TransactionScope

      わかりませんが、手動で参加 できるようです。 connection.EnlistTransaction(Transaction.Current)を使用してスコープ外で接続が開かれました 。

      コメントと編集を見ると、これは問題ではありません。

    2. すべての操作は同じスレッドで実行する必要があります。

      および

      したがって、すべての操作は同じスレッドで実行する必要があります。

    3. TransactionScopeOption<で遊ぶ/ code> TransactionScopeのコンストラクターに渡します )必要に応じた値。

      あなたのコードが何を期待していたのかわかりません。この列挙値で遊ぶことができます。

    コメントで述べたように、あなたは async / awaitを使用しています 。

    MongoDBについては、これ かどうかを確認してください。 お手伝いします。



    1. Pythonの秘密鍵を使用してSSH経由でMongoデータベースに接続してクエリを実行する

    2. $graphLookupを使用したMongoでの階層クエリ

    3. Cloudera Data Platformオペレーショナルデータベース(COD)入門

    4. nodejs/mongooseによるサブドキュメントの部分的な更新