C# 关于.NET中XmlSerializer的问题
我想序列化以下C#中的类: 项目 项目:项目 文件夹:项目 项目(包含 项目,该项目可以是项目项 (或文件夹) 当我序列化一个“项目”时,我得到以下结果C# 关于.NET中XmlSerializer的问题,c#,.net,xml-serialization,C#,.net,Xml Serialization,我想序列化以下C#中的类: 项目 项目:项目 文件夹:项目 项目(包含 项目,该项目可以是项目项 (或文件夹) 当我序列化一个“项目”时,我得到以下结果 <Project> <Item xsi:type="Folder"> <Name>MyFolder</Name> </Item> </Project> 我的文件夹 而我想要一些像 <Project> <Folder>
<Project>
<Item xsi:type="Folder">
<Name>MyFolder</Name>
</Item>
</Project>
我的文件夹
而我想要一些像
<Project>
<Folder>
<Name>MyFolder</Name>
</Folder>
</Project>
我的文件夹
你知道怎么做吗?
提前感谢。我认为您需要在项目属性中添加以下属性:
[XmlArray]
[XmlArrayItem(ElementName="ProjectItem", Type=typeof(ProjectItem))]
[XmlArrayItem(ElementName="Folder", Type=typeof(Folder))]
public List<Item> Project
{
get;
set;
}
[XmlArray]
[XmlArrayItem(ElementName=“projecttem”,Type=typeof(projecttem))]
[XmlArrayItem(ElementName=“Folder”,Type=typeof(Folder))]
公开名单项目
{
得到;
设置
}
我认为您需要在项目属性中添加以下属性:
[XmlArray]
[XmlArrayItem(ElementName="ProjectItem", Type=typeof(ProjectItem))]
[XmlArrayItem(ElementName="Folder", Type=typeof(Folder))]
public List<Item> Project
{
get;
set;
}
[XmlArray]
[XmlArrayItem(ElementName=“projecttem”,Type=typeof(projecttem))]
[XmlArrayItem(ElementName=“Folder”,Type=typeof(Folder))]
公开名单项目
{
得到;
设置
}
您可以通过属性控制命名:
public class MyEntity{
[XmlElement(ElementName = "Folder")]
public someType ProjectItem{get;set;};
}
可以按属性控制命名:
public class MyEntity{
[XmlElement(ElementName = "Folder")]
public someType ProjectItem{get;set;};
}
谢谢你的回答,但它并没有完全解决我的问题。类型为“Project”的“Project”属性可能包含Folder或ProjectItem,因此我不能假设它始终是“Folder”。谢谢您的回答,但它没有完全解决我的问题。类型为“Project”的“Project”属性可能包含Folder或ProjectItem,因此我不能假设它始终是例如“Folder”。工作得很好。我感谢你的帮助,工作得很好。我感谢你的帮助。