MsmqBindingBase.ExactlyOnce 屬性

定義

取得或設定值,這個值會指出由這個繫結處理的訊息是否會確實接收一次。

C#
public bool ExactlyOnce { get; set; }

屬性值

如果只接收一次由此繫結處理的訊息,則為 true,否則為 false。 預設為 true

備註

訊息可以在有保證或無保證的情況下傳送。 如果有保證,應用程式便可確認傳送的訊息已到達接收訊息佇列,如果訊息沒有到達接收訊息佇列,應用程式可藉由讀取寄不出的信件佇列來判斷是否到達。

ExactlyOnce 設定為 true 的已傳送訊息,必須只能傳送到交易式佇列。

ExactlyOnce,當傳送至 true 時,表示訊息佇列 (MSMQ) 確保傳送的訊息已傳遞至接收訊息佇列一次,且僅此一次。 如果傳遞失敗,則訊息會傳送至寄不出的信件佇列。

如果是需要將 ExactlyOnce 設定為 false 的訊息,DeadLetterQueue 屬性會預設為 null

如果是需要將 ExactlyOnce 設定為 true 的訊息,DeadLetterQueue 屬性會預設為在 MSMQ 的整個系統中,屬於異動式的寄不出信件佇列。

適用於

產品 版本
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1