2011-10-06 72 views
3

我需要将我的服务器与非WCF客户端集成,并建议在标头中更改SOAP版本。这可以通过自定义绑定上的<textMessageEncoding messageVersion="Soap11" />元素完成,所以我需要转换当前的basicHttpBinding。我怎样才能做到这一点?使用TransportWithMessageCredential安全模式的basicHttpBinding的等效自定义WCF绑定

<basicHttpBinding> 
    <binding> 
     <security mode="TransportWithMessageCredential"> 
      <transport clientCredentialType="Windows"/> 
      <message clientCredentialType="UserName" /> 
     </security> 
    </binding> 
</basicHttpBinding> 
+0

BasicHttpBinding已经包含一个TextMessageEncodingBindingElement,其MessageVersion属性设置为“Soap11”,所以需要自定义绑定的原因似乎是错误的。 –

回答

4

自定义绑定定义是:

<customBinding> 
    <binding name="basicHttpEquivalent"> 
    <security authenticationMode="UserNameOverTransport" /> 
    <textMessageEncoding messageVersion="Soap11" /> 
    <httpsTransport /> 
    </binding> 
</customBinding> 

但这种结合是作为basicHttpBinding你提到的完全相同。

+1

你会碰巧知道在哪里可以找到每个标准绑定的自定义绑定等效项?我想我会要求这能够使用enableUnsecureResponse属性。谢谢,丰富 –

+2

@Richard:我使用反射器,但你可以尝试[BindingBox](http://webservices20.cloudapp.net/)。 –

相关问题