У меня есть следующий класс, сгенерированный из svcutl .. используя wsdl.Используя wsdl, xsd, предоставленный сторонним svcutil, сгенерировал файл класса.
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://someURL/2008")]
public partial class DocImgIdxType_Type
{
private string valueField;
/// <remarks/>
[System.Xml.Serialization.XmlTextAttribute()]
public string Value
{
get
{
return this.valueField;
}
set
{
this.valueField = value;
}
}
}
public partial class DocImgIdx_CType
{
private DocImgIdxType_Type docImgIdxTypeField;
/// <remarks/>
public DocImgIdxType_Type DocImgIdxType
{
get
{
return this.docImgIdxTypeField;
}
set
{
this.docImgIdxTypeField= value;
}
}
Мыльный XMl генерируется таким образом.
<d4p1:DocImgIdx_CType>
<d4p1:docImgIdxTypeField>
<d4p1:valueField>Document Type</d4p1:valueField>
</d4p1:docImgIdxTypeField>
</d4p1:DocImgIdx_CType>
Но служба ожидает XML, который выглядит следующим образом
<DocImgIdx>
<DocImgIdxType>Document Type</DocImgIdxType>
</DocImgIdx>
Почемугенерируется ответ с помощью закрытого члена docImgIdxTypeField класса DocImgIdxType_Type ?.Как удалить теги valueField .. Я пытался использовать [System.Xml.Serialization.XmlElementAttribute ("..")], но пока не было.Это можно сделать с помощью форматера или мне нужен специальный кодировщик сообщений?Если есть простой способ изменить ответ, я бы хотел это сделать.