MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Модел на хранилище с MongoDB - множество единици работа с една транзакция

Никога не съм използвал MongoDB; не знам нищо за това. Отговарям само по отношение на TransactionScope; така че не съм сигурен дали това ще ви помогне.

Моля, вижте Magic Of TransactionScope . IMO, има три фактора, които трябва да търсите:

  1. Връзката към базата данни трябва да се отвори вътре TransactionScope .

    Не съм сигурен, но изглежда, че можете ръчно да се включите връзката се отвори извън обхвата с помощта на connection.EnlistTransaction(Transaction.Current) .

    Гледайки вашия коментар и редакцията, това не е проблем.

  2. Всички операции трябва да се изпълняват в една и съща нишка.

    и

    Така че всички операции трябва да се изпълняват в една и съща нишка.

  3. Играйте с TransactionScopeOption (предайте го на конструктора на TransactionScope ) стойности според вашите нужди.

    Не съм сигурен какво очаква да направи вашият код. Можете да играете с тези стойности на enum.

Както споменахте в коментара, вие използвате async/await .

За MongoDB вижте дали това ви помага.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. множество копия на Mongo DB на един и същ сървър

  2. Mongodb получава последната комбинация в рамката за агрегиране

  3. Извличане от множество отделни колекции с Express и MongoDB

  4. не мога да стартирам mongo db, initandlisten изключение

  5. Персонализиран метод за заявка за актуализиране с пролетни данни MongoRepository