我已经创建了一个通用集合,我需要填写XML文档中声明的对象,但是问题是对象类型是IProduct(即接口)。
public static List<IProduct> prod = new List<IProduct>();
要读取的XML文件:
<?xml version="1.0" encoding="UTF-8" standalone="true"?>
-<Products>
-<Product Name="Buttermilk">
<Price>135</Price>
<Quantity>5</Quantity>
</Product>
-<Product Name="Cooked sausages">
<Price>135</Price>
<Quantity>5</Quantity>
</Product>
-<Product Name="Red meat">
<Price>12</Price>
<Quantity>5</Quantity>
</Product>
-<Product Name="Shubat">
<Price>12</Price>
<Quantity>5</Quantity>
</Product>
请给我建议,如何使用LINQ填写列表。
答案 0 :(得分:0)
我认为最简单的方法是使用XmlSerializer:
XmlSerializer serializer = new XmlSerializer(typeof(List<MyClass>));
using(FileStream stream = File.OpenWrite("filename"))
{
List<MyClass> list = new List<MyClass>();
serializer.Serialize(stream, list);
}
using(FileStream stream = File.OpenRead("filename"))
{
List<MyClass> dezerializedList = (List<MyClass>)serializer.Deserialize(stream);
}