0
我有一個類,並在硬盤上序列化爲XML。 然後我在該類中添加一個新參數。 默認情況下de-serializer是否仍然可以從舊xml反序列化爲新的類結構?C#反序列化問題到新的類結構
任何其他事情可能會影響序列化? 重命名參數? 刪除參數?
我有一個類,並在硬盤上序列化爲XML。 然後我在該類中添加一個新參數。 默認情況下de-serializer是否仍然可以從舊xml反序列化爲新的類結構?C#反序列化問題到新的類結構
任何其他事情可能會影響序列化? 重命名參數? 刪除參數?
我將通過參數來假設您指的是實例變量。
XMLSerializer只會放回它可以找到的數據。即使您刪除(或重命名)了一個變量,它仍然會很快樂。
如果你說你已經給構造函數添加了一個參數,那麼請注意XMLSerializer需要一個無參數的構造函數。
這幾乎是重複的:http://stackoverflow.com/questions/618306/best-practice-to-serialize-and-deserialize-net-objects-across-versions – Aamir 2010-10-25 07:46:21
我同意,有足夠的指針在不同的回答這個問題來回答這個問題。 – slugster 2010-10-25 07:56:04
我建議你嘗試一些東西。 XML反序列化器確實允許對類進行一些修改,並且使用可用的屬性,可以將屬性映射到不同的XML元素。 – 2010-10-25 08:14:45