DeliveryFailure Sabit listesi
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Kuyruktan okunan bir ileti için olası teslim hatası türlerini belirtir.
public enum class DeliveryFailure
public enum DeliveryFailure
type DeliveryFailure =
Public Enum DeliveryFailure
- Devralma
Alanlar
AccessDenied | 32772 | Gönderenin, iletileri hedef kuyruğa yerleştirmek için erişim hakları yok. |
BadDestinationQueue | 32768 | Hedef kuyruk bulunamadı. |
BadEncryption | 32775 | Hedef kuyruk yöneticisi iletinin şifresini çözemiyor. |
BadSignature | 32774 | Hedef kuyruk yöneticisi, ekli imza geçersiz olduğundan iletinin kimliğini doğrulayamıyor. |
CouldNotEncrypt | 32776 | Kaynak kuyruk yöneticisi iletiyi şifreleyemiyor. |
HopCountExceeded | 32773 | İleti atlama sayısı aşıldı, bu da ara sunucu sayısını gösterir. |
NotTransactionalMessage | 32778 | İşlem kuyruğuna işlem dışı bir ileti gönderildi. |
NotTransactionalQueue | 32777 | İşlemsel olmayan bir kuyruğa işlem iletisi gönderildi. |
Purged | 32769 | İleti, hedef kuyruğa ulaşmadan önce temizlendi. |
QueueDeleted | 49152 | İleti uygulamaya teslim edilmeden önce hedef kuyruk silindi. |
QueueExceedMaximumSize | 32771 | Hedef kuyruk dolu olduğundan ileti teslim edilmedi. |
QueuePurged | 49153 | Kuyruk temizlendi ve ileti artık yok. |
ReachQueueTimeout | 32770 | İleti zaman aşımına uğramadan önce hedef kuyruğa ulaşmadı. |
ReceiveTimeout | 49154 | İleti uygulamaya zamanında teslim edilmedi. |
Unknown | 0 | Bilinmeyen bir hata oluştu. |
Örnekler
Aşağıdaki örnekte, bir hizmet işlemi içinde iletinin öğesine nasıl erişecekleri DeliveryFailure gösterilmektedir.
public void SimpleSubmitPurchaseOrder(PurchaseOrder po)
{
Console.WriteLine("Submitting purchase order did not succeed ", po);
MsmqMessageProperty mqProp = OperationContext.Current.IncomingMessageProperties[MsmqMessageProperty.Name] as MsmqMessageProperty;
Console.WriteLine("Message Delivery Status: {0} ", mqProp.DeliveryStatus);
Console.WriteLine("Message Delivery Failure: {0}", mqProp.DeliveryFailure);
Console.WriteLine();
}
<OperationBehavior(TransactionScopeRequired := True, TransactionAutoComplete := True)> _
Public Sub SimpleSubmitPurchaseOrder(ByVal po As PurchaseOrder)
Console.WriteLine("Submitting purchase order did not succeed ", po)
Dim mqProp As MsmqMessageProperty = TryCast(OperationContext.Current.IncomingMessageProperties(MsmqMessageProperty.Name), MsmqMessageProperty)
Console.WriteLine("Message Delivery Status: {0} ", mqProp.DeliveryStatus)
Console.WriteLine("Message Delivery Failure: {0}", mqProp.DeliveryFailure)
Console.WriteLine()
End Sub
Açıklamalar
İletinin DeliveryFailure teslim edilemediğini ve teslim edilemeyen ileti kuyruğuna neden gönderildiğini belirlemek için özelliğini alabilirsiniz. Teslim edilemeyen ileti kuyruğunda ileti işleme hakkında ek bilgi için bkz. İleti Aktarım Hatalarını İşlemek için Dead-Letter Kuyruklarını Kullanma.