不理解 SOAP 标头操作

本文关键字:操作 SOAP 不理解 | 更新日期: 2023-09-27 17:56:57

我正在尝试在 C# 中使用 Web 服务。 每当我尝试从 Web 服务类调用该函数时,我都会收到"SOAP 标头操作未被理解"。我添加了指向项目中 Web 服务的 Web 引用[不是服务引用]。已执行以下步骤来添加 Web 引用

1)右键单击项目 -> 添加网络参考

当我在 Web 浏览器中检查 Web 服务时,我在标题中找到了这个

<wsdl:definitions name="MyService" targetNamespace="http://tempuri.org/">
    <wsp:Policy wsu:Id="WSHttpBinding_ICAIService_policy">
        <wsp:ExactlyOne><wsp:All><sp:TransportBinding>
    <wsp:Policy>

我已经完成了以下代码来调用 Web 服务函数

WebStruct webS = new WebStruct();
webS.Name = "Peter";
webS.ID = 22;
webS.Find(webS);

不理解 SOAP 标头操作

删除 Web 引用并改为添加服务引用。

尝试使用简单的服务终结点绑定 BasicHttpBinding。此绑定与 .NET 2.0 兼容。

你能咨询你的网络服务提供商吗?似乎他们需要一些自定义的标头信息来处理您的请求。服务提供商添加此类标头非常常见,以提高安全性。

SoapAction 错误只有在我进入"配置服务引用..."时才消失。属性,并更新了服务参考,勾选了这些选项。

并勾选了这两个框:

滴答 生成异步操作滴答 始终生成消息合约