在WCF客户端中修改SOAP标头Mustunderstand属性 [英] Modify SOAP header Mustunderstand attribute in WCF client

查看:132
本文介绍了在WCF客户端中修改SOAP标头Mustunderstand属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为服务(不是WCF)编写WCF客户端.收到未处理的'mustUnderstand'标头元素的错误:{http://www.w3.org/2005/08/addressing}操作,因为请求SOAP包含标有mustunderstand ='true'的标头.我必须将其设置为false或删除整个标题.你能显示出这样做的方法吗?

I am writing a WCF client for a service (not WCF). Getting an error that Unprocessed 'mustUnderstand' header element: {http://www.w3.org/2005/08/addressing}Action, because request SOAP contains header with mustunderstand='true'. I have to either set it false or remove the whole header. can you show the way to do that?

这是绑定代码

var transportElement = new HttpsTransportBindingElement();
        transportElement.AuthenticationScheme = AuthenticationSchemes.Basic;

        var messegeElement = new TextMessageEncodingBindingElement();
        messegeElement.MessageVersion = MessageVersion.CreateVersion(EnvelopeVersion.Soap11);

        var binding = new CustomBinding(messegeElement, transportElement);
        return binding;

推荐答案

我通过将AddressingVersion设置为None来解决这一问题,该行为没有放置SOAP标头.

I resolved this one by setting AddressingVersion to None that did not put the SOAP headers.

这是代码

MessageVersion.CreateVersion(EnvelopeVersion.Soap11, AddressingVersion.None)

这篇关于在WCF客户端中修改SOAP标头Mustunderstand属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆