如何在生成的WSDL中包含header的内容

如何在生成的WSDL中包含header的内容,第1张

在wsdl中添加相应信息: 首先在binding中对应的接口中添加soapheader节点; 其次在message中定义soapheader节点下的对象; 最后在type里对该对象具体定义每个元素即可;

首先,要创建一个继承自System.Web.Services.Protocols.SoapHeader的RequestSOAPHeader类,在其中添加UserName和Password两个属性,代码如下:

public class RequestSOAPHeader : System.Web.Services.Protocols. SoapHeader

{

public string user { getset}

public string password { getset}

}

生成的WebService代理类中设置成属性成员:

public partial class ISysNotifyTodoWebServiceService

{

public RequestSOAPHeader RequestSOAPHeader { getset}

}

在访问的WebService方法上方添加SOAPHeader的声明:

[System.Web.Services.Protocols. SoapDocumentMethodAttribute( "", RequestNamespace="http://webservice.notify.sys/" , ResponseNamespace="http://webservice.notify.sys/" , Use=System.Web.Services.Description.SoapBindingUse .Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle .Wrapped)]

[ return: System.Xml.Serialization. XmlElementAttribute( "return", Form=System.Xml.Schema.XmlSchemaForm .Unqualified)]

[ SoapHeader( "RequestSOAPHeader")]

public notifyTodoAppResult setTodoDone([System.Xml.Serialization.XmlElementAttribute (Form=System.Xml.Schema.XmlSchemaForm .Unqualified)] notifyTodoRemoveContext arg0) {

object[] results = this.Invoke( "setTodoDone", new object[] {

arg0})

return (( notifyTodoAppResult)(results[0]))

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11536465.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存