Je souhaite définir l'étiquette de message MSMQ à l'aide de NetMsmqBinding. Je comprends it’s easy when using the MsmqIntegrationBinding, mais je voudrais continuer à utiliser le NetMsmqBinding (même appeler des méthodes privées, si possible)Comment spécifier une étiquette de message lors de l'utilisation de WCF et NetMsmqBinding?
Répondre
Je pensais que c'était une question intéressante. Malheureusement, de tout ce que j'ai vu, il semble que vous ne puissiez pas accéder à la propriété Label sur un message MSMQ sortant en utilisant NetMsmqBinding.
Voici quelques-unes des liens que je suis tombé sur:
http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/3389679b-a130-4e83-bb4c-1b522c216227/
http://blogs.msdn.com/skaufman/archive/2007/12/17/msmq-label-property-and-wcf.aspx
Je ne pouvais pas trouver quelque chose qui a expliqué exactement pourquoi, mais le raisonnement fait sense - NetMsmqBinding n'expose rien de spécifique à System.Messaging, de sorte que la liaison elle-même peut être facilement autre liaison sans aucun changement de code. Comme vous l'avez dit, le MsmqIntegrationBinding est étroitement couplé aux concepts System.Messaging, de sorte que vous avez accès à tous les éléments System.Messaging au détriment de l'interchangeabilité avec d'autres liaisons. Si la définition de l'étiquette est importante, la route la plus facile sera probablement d'utiliser msmqIntegrationBinding.
George: Pas de réponse, mais je suis curieux de savoir comment vous envisagez d'utiliser ensemble l'étiquette MSMQ avec NetMsmqBinding. La raison pour laquelle je demande est que NetMsmqBinding a été créé pour prendre en charge le scénario dans lequel les points de terminaison d'envoi et de réception sont tous les deux des applications WCF. Vous pouvez donc également coller les données hors bande dont vous avez besoin dans les en-têtes de message ...
Utilisez OperationContext.Current.IncomingMessageProperties.Values
correcte - dans l'application d'envoi, je voudrais ajouter une chaîne identifiant le message pour les opérations - ce serait extrêmement utile lorsque le point final de réception ne fonctionne pas et les messages sont being * queued * ... –
WCF a construit dans la file d'attente. http://msdn.microsoft.com/en-us/library/ms789048.aspx –