読まれたメッセージを MSMQ から削除するオプションはありますか?
同様に、受信 + 削除はアトミック操作として実行できますか?
次のメッセージをのぞき見して、処理が完了した後に受信したいようです。
Message message = Queue.Peek();
Queue.ReceiveById(message.Id);
MSMQの受信とピークの違いについて言及していますか?
IMO アトミック操作を保証する最も簡単なメカニズムは、キュー操作を TransactionScope 内に配置することです。これは、WCFのように行うことができます。