我有两门这样的课:
public class Product
{
public string Name { get; set; }
public int Id { get; set; }
}
public class Category
{
public string CategoryName { get; set; }
public List<Product> Products { get; set; }
}有什么方法可以在分类类上装饰我的产品属性,所以它是这样序列化的吗?
<Container>
<Category>
<CategoryName>Unicorn Stuff</CategoryName>
<Product>
<Id>1212</Id>
<Name>Unicorn Dust</Name>
</Product>
<Product>
<Id>1829</Id>
<Name>Horn Extension</Name>
</Product>
<Product>
<Id>27373</Id>
<Name>Facemask with hole</Name>
</Product>
</Category>
<Category>
<CategoryName>Pixie</CategoryName>
<Product>
<Id>222</Id>
<Name>Pixie Dust</Name>
</Product>
</Category>
</Container>请注意,每个类别都有类别元素(类别名称)和0-n产品子元素。
...Or --我必须以更手动的方式生成文档吗?
(这不是我设计xml结构的方式,而是我们生活在一个不完美的世界中)
发布于 2011-04-26 20:01:31
将[XmlElement]属性放在列表中:
public class Category
{
public string CategoryName { get; set; }
[XmlElement]
public List<Product> Products { get; set; }
}发布于 2011-04-26 19:54:51
我相信XSD.exe可以从您的类中为您创建XSD。然后,您只需使用基本的XmlSerializer来序列化到XSD。
或者,您可以创建XSD,并从XSD生成类。这两种方法都应该有效。
https://stackoverflow.com/questions/5795672
复制相似问题