用svcutil工具将对方发来的wsdl文件生成代理文件
调用代理函数发送一个XML文档
对对方收到的或者我用第三方工具监测到的XML中的<>被转义成<>如下全文如下
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<receiveDataSync xmlns="http://service.transport.nsc.org">
<receiveDataSync i:type="a:string" xmlns:a="http://www.w3.org/2001/XMLSchema" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<NRSML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0">
<ExchangeHeader facility="AutoMonitoringStation" level="state" scheme="RealTimeData" type="add" uid="20121113-082525781">
<Time />
</ExchangeHeader>
<DataContent>
<RealTimeData />
</DataContent>
</NRSML>
</receiveDataSync>
</receiveDataSync>
</s:Body>
</s:Envelope>
红色部分 应该是调用webservice自动加的 <>就正常
蓝色部分是我要发送的XML 我自己发送的就被转义了
怎么才能 不被转义?
调用代理函数发送一个XML文档
对对方收到的或者我用第三方工具监测到的XML中的<>被转义成<>如下全文如下
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<receiveDataSync xmlns="http://service.transport.nsc.org">
<receiveDataSync i:type="a:string" xmlns:a="http://www.w3.org/2001/XMLSchema" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<NRSML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0">
<ExchangeHeader facility="AutoMonitoringStation" level="state" scheme="RealTimeData" type="add" uid="20121113-082525781">
<Time />
</ExchangeHeader>
<DataContent>
<RealTimeData />
</DataContent>
</NRSML>
</receiveDataSync>
</receiveDataSync>
</s:Body>
</s:Envelope>
红色部分 应该是调用webservice自动加的 <>就正常
蓝色部分是我要发送的XML 我自己发送的就被转义了
怎么才能 不被转义?
<![CDATA[]]>
但我放进去后
也同样被改成转义字符了
郁闷啊
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行库版本:2.0.50727.3634
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.ServiceContractAttribute(Namespace="http://www.chinansc.cn/nrsml/esb/cachenode", ConfigurationName="DataCacheServicePortType")]
public interface DataCacheServicePortType
{
// CODEGEN: 操作 receiveDataAsync 以后生成的消息协定不是 RPC,也不是换行文档。
[System.ServiceModel.OperationContractAttribute(Action="urn:receiveDataAsync", ReplyAction="urn:receiveDataAsyncResponse")]
receiveDataAsyncResponse receiveDataAsync(receiveDataAsyncRequest request);
// CODEGEN: 消息 feedbackRequest 的包装命名空间(http://service.transport.nsc.org)以后生成的消息协定与默认值(http://www.chinansc.cn/nrsml/esb/cachenode)不匹配
[System.ServiceModel.OperationContractAttribute(Action="urn:feedback", ReplyAction="urn:feedbackResponse")]
feedbackResponse feedback(feedbackRequest request);
// CODEGEN: 消息 receiveDataSyncRequest 的包装命名空间(http://service.transport.nsc.org)以后生成的消息协定与默认值(http://www.chinansc.cn/nrsml/esb/cachenode)不匹配
[System.ServiceModel.OperationContractAttribute(Action="urn:receiveDataSync", ReplyAction="urn:receiveDataSyncResponse")]
receiveDataSyncResponse receiveDataSync(receiveDataSyncRequest request);
}[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.MessageContractAttribute(WrapperName="receiveDataAsync", WrapperNamespace="http://service.transport.nsc.org", IsWrapped=true)]
public partial class receiveDataAsyncRequest
{
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://service.transport.nsc.org", Order=0)]
public object receiveDataAsync;
public receiveDataAsyncRequest()
{
}
public receiveDataAsyncRequest(object receiveDataAsync)
{
this.receiveDataAsync = receiveDataAsync;
}
}[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.MessageContractAttribute(IsWrapped=false)]
public partial class receiveDataAsyncResponse
{
public receiveDataAsyncResponse()
{
}
}[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.MessageContractAttribute(WrapperName="feedback", WrapperNamespace="http://service.transport.nsc.org", IsWrapped=true)]
public partial class feedbackRequest
{
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://service.transport.nsc.org", Order=0)]
public object feedback;
public feedbackRequest()
{
}
public feedbackRequest(object feedback)
{
this.feedback = feedback;
}
}[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.MessageContractAttribute(WrapperName="feedbackResponse", WrapperNamespace="http://service.transport.nsc.org", IsWrapped=true)]
public partial class feedbackResponse
{
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://service.transport.nsc.org", Order=0)]
public object @return;
public feedbackResponse()
{
}
public feedbackResponse(object @return)
{
this.@return = @return;
}
}[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.MessageContractAttribute(WrapperName="receiveDataSync", WrapperNamespace="http://service.transport.nsc.org", IsWrapped=true)]
public partial class receiveDataSyncRequest
{
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://service.transport.nsc.org", Order=0)]
public object receiveDataSync;
public receiveDataSyncRequest()
{
}
public receiveDataSyncRequest(object receiveDataSync)
{
this.receiveDataSync = receiveDataSync;
}
}[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.MessageContractAttribute(WrapperName="receiveDataSyncResponse", WrapperNamespace="http://service.transport.nsc.org", IsWrapped=true)]
public partial class receiveDataSyncResponse
{
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://service.transport.nsc.org", Order=0)]
public object @return;
public receiveDataSyncResponse()
{
}
public receiveDataSyncResponse(object @return)
{
this.@return = @return;
}
}[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
public interface DataCacheServicePortTypeChannel : DataCacheServicePortType, System.ServiceModel.IClientChannel
{
}[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
public partial class DataCacheServicePortTypeClient : System.ServiceModel.ClientBase<DataCacheServicePortType>, DataCacheServicePortType
{
public DataCacheServicePortTypeClient()
{
}
public DataCacheServicePortTypeClient(string endpointConfigurationName) :
base(endpointConfigurationName)
{
}
public DataCacheServicePortTypeClient(string endpointConfigurationName, string remoteAddress) :
base(endpointConfigurationName, remoteAddress)
{
}
public DataCacheServicePortTypeClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
base(endpointConfigurationName, remoteAddress)
{
}
public DataCacheServicePortTypeClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
base(binding, remoteAddress)
{
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
receiveDataAsyncResponse DataCacheServicePortType.receiveDataAsync(receiveDataAsyncRequest request)
{
return base.Channel.receiveDataAsync(request);
}
public void receiveDataAsync(object receiveDataAsync1)
{
receiveDataAsyncRequest inValue = new receiveDataAsyncRequest();
inValue.receiveDataAsync = receiveDataAsync1;
receiveDataAsyncResponse retVal = ((DataCacheServicePortType)(this)).receiveDataAsync(inValue);
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
feedbackResponse DataCacheServicePortType.feedback(feedbackRequest request)
{
return base.Channel.feedback(request);
}
public object feedback(object feedback1)
{
feedbackRequest inValue = new feedbackRequest();
inValue.feedback = feedback1;
feedbackResponse retVal = ((DataCacheServicePortType)(this)).feedback(inValue);
return retVal.@return;
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
receiveDataSyncResponse DataCacheServicePortType.receiveDataSync(receiveDataSyncRequest request)
{
return base.Channel.receiveDataSync(request);
}
public object receiveDataSync(object receiveDataSync1)
{
receiveDataSyncRequest inValue = new receiveDataSyncRequest();
inValue.receiveDataSync = receiveDataSync1;
receiveDataSyncResponse retVal = ((DataCacheServicePortType)(this)).receiveDataSync(inValue);
return retVal.@return;
}
}