尝试将C#中的对象序列化为XML时遇到问题。
我发现导出此类时出了错:

[XmlInclude(typeof(CountryData))]
[XmlInclude(typeof(ManufacturerData))]
[XmlInclude(typeof(ProgramData))]

[Serializable()]
public class DeliveryTimeList<T> where T : IDeliveryTimeData
{
    private DataTable _data;
    public DataTable Data
    {
        get { return _data; }
        set { _data = value; }
    }

    public DeliveryTimeList()
    {
        _data = new DataTable();
    }

    public void Add(T data)
    {
        //       Not in Use
        //_data.Rows.Add(data.ItemArray());
    }
}


该类是通用的,因为下一步是在创建类时更改DataTable,它将包含一个List。
类CountryData,Manufacturer和ProgramData实现接口IDeliveryTimeData。

我得到一个System.InvalidOperationException与以下描述:
Beim Generieren des XML-Dokuments ist ein Fehler aufgetreten(大致翻译者生成XML文档期间发生错误。
我不知道为什么它没有序列化,但是我希望这个问题与该类是通用的有关。

有人知道我在做什么错吗?

最佳答案

您不能直接序列化数据表,而需要序列化附加到的数据集

关于c# - 在C#中序列化通用类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25602067/

10-11 22:52
查看更多