7
我想为WSHttpBinding设置消息版本为EnvelopeVersion.Soap11。我不知道该怎么做。谁能帮我。这里是我的绑定代码设置WCF客户端代码中的消息版本
var binding = new WSHttpBinding()
{
UseDefaultWebProxy = true,
Security =
{
Mode = SecurityMode.Transport,
Transport =
{
ClientCredentialType = HttpClientCredentialType.Basic
},
},
};
编辑: 这里是代码做
TransportBindingElement transportElement = null;
transportElement = new HttpsTransportBindingElement();
((HttpsTransportBindingElement)transportElement).AuthenticationScheme = AuthenticationSchemes.Basic;
((HttpsTransportBindingElement) transportElement).KeepAliveEnabled = false;
var messegeElement = new TextMessageEncodingBindingElement
{
MessageVersion = MessageVersion.CreateVersion(EnvelopeVersion.Soap11, AddressingVersion.None),
ReaderQuotas =
{
MaxArrayLength = 200000,
MaxBytesPerRead = 200000,
MaxDepth = 200000,
MaxNameTableCharCount = 200000,
MaxStringContentLength = 200000
}
};
var binding = new CustomBinding(messegeElement, transportElement);
return binding;
如何通过C#实现这一目标码? – Amzath 2010-11-12 20:45:38
@amz:您应该使用此解决方案**更新**您的原始问题;在那里你可以正确地格式化和呈现它 - 在评论中,这是一个混乱的事情...... – 2010-11-12 22:16:08
已添加源代码到答案 – Amzath 2010-11-24 22:39:32