コミットされていないTransactionScopeを使用するDatabaseTestFixtureクラスを使用してSQL Server 2000データベースに対していくつかの単体テストが実行されているため、すべての変更がロールバックされます。テストは問題なくローカルデータベースに対して実行されました。なぜTransactionScopeとMSDTCを使用してVSデータベースユニットテストが失敗しますか?
次に、共通のデータベースサーバーで単体テストを指し、単体テストを実行しているマシンでMSDTCをセットアップし、すべてがそのマシンで正常に動作しています。
ユニットテストを同じ共通データベースに対しても実行する新しいマシンをセットアップしました。ユニットテストは、このマシン上で実行していない、我々は次のエラーを取得する:
System.Transactions.TransactionException : The transaction has already been implicitly or explicitly committed or aborted.
MSDTCの設定我々は、画面によって画面を比較し、働いているものとまったく同じです。
誰もこれまでにこのような経験がありますか?それを引き起こしている可能性について手がかりを探すかもしれないところに何か指摘していますか?
Windowsのバージョンとサービスパック、ファイアウォールオプション、msdtcオプション、VSバージョン、およびサービスパックを確認しました。
これに感謝します。私は全く同じ問題を抱えていて、何が間違っていたのか理解できませんでした。この単純な修正は、私のためにそれを修正しました。 – Somedeveloper