【发布时间】:2018-01-04 16:19:40
【问题描述】:
有没有办法改变 WSDL 中消息部分的name?我的 WSDL 上有这个:
<wsdl:message name="getDataRequestMsg">
<wsdl:part name="getData" element="tns:getData"/>
</wsdl:message>
<wsdl:message name="getDataRequestMsg_Headers">
<wsdl:part name="Header" element="tns:Header"/>
</wsdl:message>
<wsdl:message name="getDataResponseMsg">
<wsdl:part name="getDataResponse" element="tns:getDataResponse"/>
</wsdl:message>
<wsdl:message name="getDataResponseMsg_Headers">
<wsdl:part name="Header" element="tns:Header"/>
</wsdl:message>
我正在使用MessageContractAttribute,实际上我可以使用MessageBodyMemberAttribute 上的相应name 属性更改名称,但它也会更改element 名称,这不是我想要的。我的 MessageContract 如下:
[System.ServiceModel.MessageContractAttribute(IsWrapped=false)]
public partial class getDataRequestMsg
{
[System.ServiceModel.MessageHeaderAttribute()]
public Header[] Header;
[System.ServiceModel.MessageBodyMemberAttribute()]
public getData getData;
public getDataRequestMsg()
{
}
public getDataRequestMsg(Header[] Header, getData getData)
{
this.Header = Header;
this.getData = getData;
}
}
[System.ServiceModel.MessageContractAttribute(IsWrapped=false)]
public partial class getDataResponseMsg
{
[System.ServiceModel.MessageHeaderAttribute()]
public Header[] Header;
[System.ServiceModel.MessageBodyMemberAttribute()]
public getDataResponse getDataResponse;
public getDataResponseMsg()
{
}
public getDataResponseMsg(Header[] Header, getDataResponse getDataResponse)
{
this.Header = Header;
this.getDataResponse = getDataResponse;
}
}
【问题讨论】:
标签: c# .net web-services wcf wsdl