[英]Generate C# class from XML file with mixed type of objects
我有类似下面的课程
public abstract class MainDTO
{
public string Id;
public string CreatedBy;
}
public class SubDTO : MainDTO
{
public string SubKey;
}
public class LockDTO : SubDTO
{
public string LockKey;
}
我需要创建一个返回List<MainDTO>
的函数。 我的xml文件如下所示。
<MainDTOList>
<SubDTO>
<Id>ABC</Id>
<CreatedBy>XXX</CreatedBy>
<SubKey>123045</SubKey>
</SubDTO>
<LockDTO>
<Id>GERTE</Id>
<CreatedBy>VGINA</CreatedBy>
<SubKey>123045</SubKey>
<LockKey>L123045</SubKey>
</LockDTO>
</MainDTOList>
我得到了代码来读取XML文件,并通过使用XmlSerializer在所有对象都是相同类型时返回对象集合。 但就我而言,他们是不同的。 你能告诉我怎么做吗?
我能想到你可以实现上述的简单方法就是看看你的XML结构,有点不使用它,所以原谅我的小假设错误
我们的想法是创建一个看起来像你的XML的类,如果值只有一次,那么使用一个看起来像这样的类(作为样本)
[XmlRoot("MainDTOList")]
public class SomeClass
{
[XmlElement("SubDTO")]
public SubDTO SubDTO{get;set;}
[XmlElement("SubDTO")]
public LockDTO LockDTO{get;set;}
....
}
然后做一个简单的XmlSerializer。 反序列化以反序列化您的特定XML
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.