2
當我嘗試將C#中的對象序列化爲XML時,出現問題。 我想通了出口該類時出錯:序列化C#中的通用類
[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());
}
}
類是通用的,因爲下一步就是要改變在創建類的數據表,它包含一個列表。 類CountryData,Manufacturer和ProgramData實現接口IDeliveryTimeData。
我得到下面的描述中System.InvalidOperationException: BEIM Generieren DES XML-Dokuments IST EIN Fehler aufgetreten(< - 德語) 這大致翻譯器有一代的XML文檔的過程中是一個錯誤。 我不知道它爲什麼不是序列化,但我期望這個問題與該類是通用的有關。
有沒有人知道我做錯了什麼?
你設置你的界面IDeliveryTimeData爲可序列化呢? – gimpycpu 2014-09-01 08:51:49
這是不可能的,因爲它看起來:錯誤屬性'可序列化'在此聲明類型無效。它只對'class,struct,enum,delegate'聲明有效。 – Bongo 2014-09-01 08:54:43
嗯,這代碼編譯,你也應該這麼做,如果你這樣做正確 A級:IDeliveryTimeData {} 接口IDeliveryTimeData:ISerializable的 {} 阿 – gimpycpu 2014-09-01 08:57:51