我编写了自己的数据类型,然后将其用作数据表中列的类型。我正在从文件中读取XML数据。在我调用ReadXML(文件)方法之后,除了具有我的数据类型的列中的单元格之外,所有单元格都具有值。是否有一些操作符需要覆盖,以便ReadXML(文件)可以从文件中获取数据并从中生成MyDataType?此外,当我尝试对此列的defaultview进行排序时,我得到“对象引用而不是对象的实例”。谢谢你的帮助。
答案 0 :(得分:1)
是的,您可以使用自定义数据类型创建列。
假设您希望属性为Address:
类型var ds = new DataSet();
var table = new DataTable();
table.Columns.Add("Address", typeof(Address));
ds.Tables.Add(table);
如果您希望能够序列化数据集(无法序列化数据表),则必须确保类型Address
可序列化。
将类标记为可序列化有多种方法。最简单的方法是使用SerializableAttribute
。但我建议你的Address
类实现IXmlSerializable
接口。这可能有点难,但你会避免版本问题。