Come si specifica un'etichetta di messaggio quando si utilizza WCF e NetMsmqBinding?

StackOverflow https://stackoverflow.com/questions/164295

  •  03-07-2019
  •  | 
  •  

Domanda

Vorrei impostare l'etichetta del messaggio MSMQ usando NetMsmqBinding. Capisco è facile quando si utilizza MsmqIntegrationBinding , ma vorrei continuare a utilizzare NetMsmqBinding ( persino chiamare metodi privati ??, se possibile)

È stato utile?

Soluzione

Pensavo fosse una domanda interessante. Sfortunatamente, da tutto quello che ho visto, sembra che non puoi accedere alla proprietà Label su un messaggio MSMQ in uscita usando NetMsmqBinding.

Ecco alcuni dei link che ho trovato:

Non sono riuscito a trovare nulla che spiegasse esattamente il perché, ma il ragionamento ha senso: NetMsmqBinding non espone nulla di specifico per System.Messaging, in modo che il binding stesso possa essere facilmente sostituito con un altro binding senza alcuna modifica del codice. Come hai detto, MsmqIntegrationBinding è strettamente associato ai concetti System.Messaging, in modo da avere accesso a tutto il materiale System.Messaging a spese dell'intercambiabilità con altri binding. Se l'impostazione dell'etichetta è importante, il percorso più semplice sarà probabilmente usare solo msmqIntegrationBinding.

Altri suggerimenti

George: nessuna risposta, ma sono curioso di sapere come pensi di utilizzare l'etichetta MSMQ insieme a NetMsmqBinding.

Il motivo per cui lo chiedo è che NetMsmqBinding è stato davvero creato per supportare lo scenario in cui entrambi gli endpoint di invio e ricezione sono entrambi applicazioni WCF, quindi a quel punto potresti anche incollare tutti i dati fuori banda di cui hai bisogno le intestazioni dei messaggi ...

Usa OperationContext.Current.IncomingMessageProperties.Values ??

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top