WCF 第四章 绑定 msmqIntegrationBinding

msmqIntegrationBinding 绑定用来在一个WCF应用程序和一个直接利用MSMQ的应用程序间通信-比如,使用System.Messaging.这允许开发人员利用WCF同时也使用他们已有的MSMQ应用程序。msmqIntegrationBinding绑定允许MSMQ消息映射到WCF消息。这通过在MsmqMessage类中对MSMQ消息包装来实现的。类位于System.ServiceModel.MsmqIntegration命名空间里。实例可以使用单向契约被发送或接收。

   下面的代码显示了msmqIntegrationBinding绑定的地址格式:

   msmq.formaname:{MSMQ format name}

   MSMQ地址格式不需要端口来确定。然后,MSMQ需要打开特定端口,比如1801.表4.12显示了msmqIntegrationBinding绑定的可以配置的属性。

表4.12 msmqIntegrationBinding绑定属性

WCF 第四章 绑定 msmqIntegrationBinding

 WCF 第四章 绑定 msmqIntegrationBinding

 列表4.30 显示了使用msmqIntegrationBinding绑定暴露一个服务的最小配置

 列表4.30 msmqIntegrationBinding 宿主配置

<?xml version="1.0" encoding="utf-8" ?>

<configuration> 

 <system.serviceModel>   

  <services>      

   <service name="EssentialWCF.StockQuoteRequestService">        

   <endpoint address="msmq.formatname:DIRECT=OS:.\private$\stockquoteresponse"            

          binding="msmqIntegrationBinding"            

          contract="EssentialWCF.IStockQuoteRequest" />      

   </service>    

  </services>  

</system.serviceModel></configuration>

调用由msmqIntegrationBinding绑定生成的服务的最小配置在列表4.31中显示

   列表4.31 msmqIntegrationBinding 客户端配置

<?xml version="1.0" encoding="utf-8" ?>

<configuration>  

  <system.serviceModel>    

  <services>      

   <service name="EssentialWCF.HelloWorld">        

   <endpoint address="msmq.formatname:DIRECT=OS:.\private$\stockquoteresponse"            binding="msmqIntegrationBinding"            

   contract="EssentialWCF.IStockQuoteRequestService" />      

   </service>    

  </services>  

</system.serviceModel></configuration>

你可能感兴趣的:(integration)