簡體   English   中英

是否可以在同一xml文件中序列化來自不同類的對象?

[英]Is it possible to serialize objects made from different class in the same xml file?

例如,我有Header類和Dog類。 我想要一個看起來像這樣的文件:

在此處輸入圖片說明

到目前為止,我還沒有看到執行此操作的示例。 我必須使用serializer.Serialize因為我有成千上萬個對象的集合。 否則將花費太長時間。

如果不可能,我將制作兩個不同的文件,一個帶有標頭,另一個帶有對象集合,但這不是一個有趣的解決方案。

編輯:
我不能使用包裝器,因為開始時沒有完整的狗列表。 我一次收到一份,直到我停止申請

非常感謝!

您將需要創建另一個可以表示該類的類。 例如。

public class Kennel
{
    public Header Header { get; set; }
    public List<Dog> Dogs { get; set; }
}

然后可以輕松地對其進行序列化/反序列化。

在回答您的問題。 如果您需要與自己的XML相同的XML,則需要創建一個自定義包裝器,以將XML讀取和寫入該特定格式。

我將研究制作一個自定義包裝類(稱為: DogWrapper或其他類), DogWrapper包含一個Header對象和一個Dog類型的列表(或數組,或任何其他形式)。 然后使用自定義序列化定義如何寫出該對象。

然后,您只需將標頭和狗編組到DogWrapper中,並序列化DogWrapper。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM