XmlElement []的序列化问题

时间:2014-09-29 20:41:24

标签: c# xml-serialization

我正在尝试向XElementArray []添加一些项目,这是wcf请求对象的一部分。

在生成的代理类中,属性定义为

private XmlElement[] MetaData;

将元素添加到此xelement数组中,如下所示

XmlElement[] MetaDataDoc = new XmlElement[10];
string fileName = string.Empty;
var xmldocm = new XmlDocument();
xmldocm.Load(fileName);
MetaDataDoc = xmldocm.DocumentElement.ChildNodes.Cast<XmlElement>().ToArray();

如果我添加一个断点,我只能看到子节点被添加到数组中。然后将此MeteDataDoc设置为wcf request

的MetaData属性

这是我加载的示例xml,用于向xmlarray添加元素

 <DocumentTemplate>
   <MetaData>
   <FileName>Account Details</FileName>
   <Description>Account Details</Description>
   <Language>English - US</Language>
   <BusinessChannel>
   <Inbound>true</Inbound>
   </BusinessChannel>
   </MetaData>
</DocumentTemplate>

但是当wcf序列化请求时它会如下所示......多次添加MetaData节点......并在其下添加元素。

不在单个MetaData节点下添加元素

<MetaData>
  <FileName>Account Details</FileName>
</MetaData>
<MetaData>
  <Description>Account Details</Description>
</MetaData>
<MetaData>
  <Language>English - US</Language>
</MetaData>
<MetaData>
  <BusinessChannel>
    <Inbound>true</Inbound>
  </BusinessChannel>
</MetaData>

请你帮我解决这个问题

0 个答案:

没有答案