我正在尝试从 C# 中的控制台连接到肥皂服务(wsdl)。我的代码相当简单,我将 wsdl 作为服务引用添加到项目中,并且按预期创建了代理类(?)。
该服务对每条消息使用一个身份验证密钥,我找不到任何地方将其添加到soap标头。作为参考,这是我在 main 方法中运行的代码:
Api.Servicereference1.PortClient object = new Api.Servicereference1.PortClient();
object.testmethod();
这篇文章的输出如下:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<testmethod xmlns="http://wsdlserver.com/soap"/>
</s:Body>
</s:Envelope>
但是,我想要实现的是发送以下消息,并进行身份验证:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<s:auth>key</s:auth>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<testmethod xmlns="http://wsdlserver.com/soap"/>
</s:Body>
</s:Envelope>
谁能帮助我朝正确的方向前进,至于如何将此自定义标头添加到我的消息中?谢谢。