TransactionScope が複数のデータベース間でデータの整合性を保証する方法の原則を教えてもらえますか? 最初にコマンドをデータベースに送信し、データベースが応答するのを待ってから、以前に送信されたコマンドを適用するようにメッセージを送信すると思います。ただし、これらの適用メッセージを送信するときに実行が突然停止すると、コマンドを適用したデータベースと適用していないデータベースが発生する可能性があります。誰でもこれに光を当てることができますか?
編集:
私が求めているのは、停電や突然のシャットダウンの場合に複数のデータベースに書き込むときに、データの整合性を保証するために TransactionScope に頼ることができると思います。
ありがとう、バス
例:
using(var scope=new TransactionScope())
{
using (var context = new FirstEntities())
{
context.AddToSomethingSet(new Something());
context.SaveChanges();
}
using (var context = new SecondEntities())
{
context.AddToSomethingElseSet(new SomethingElse());
context.SaveChanges();
}
scope.Complete();
}