C# 调用WebService 时 soapheader验证问题!

本文介绍了在C#中调用Java编写的WebService时遇到的SOAPHeader验证问题及解决方法。需要手动扩展SoapHeader类,并在代理类中添加与服务端要求一致的Header成员,同时正确赋值并绑定到接口函数。遵循节点名称与对象名称一致的原则,最终在VS2008中实现成功调用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:C#调用webservice时需要 soapheader中传送对方指定的信息,.net 平台自动生成的类中没有相关的接口

 

实现方法:
1.C#调用java 编写的webservice时不会自动生成 soapheader 类接口的,需要改动Reference.cs。
2.改动方法
   a、 继承System.Web.Services.Protocols.SoapHeader ,生成一个新类(MyHeader,这里名字无所谓),类中扩展调要webservice 试soapheader中要求的成员,名称一定要与对方要求的一样

 

    public class MyHeader : System.Web.Services.Protocols.SoapHeader
    {
        public string user; //= "12650000238BF747AD";
        public string pwd ;//= "70947EFA9D77E413502C24B0DD252F66";
        public MyHeader()
        {
            user = "";
            pwd = "";
        }
    }

  需要注意的是: user,pwd是对方要求的,名称一定要一致。

 

  b、代理类中增加 成员

         

评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值