0
我有正在序列化的對象,並且想要添加「版本」屬性。.Net反序列化XML,確定元素是否存在
我想是:
了在代碼中創建- 的新對象應給予「最新」版本(定義某處)
對象反序列化,即不在它們的xml中有版本屬性,應該標記爲「版本1」。
對象反序列化,即做在它們的xml中有版本屬性,應該使用xml中的任何版本。
例(僞代碼):
const string LatestVersion = "2";
class Foo {
public String version {get; set; }
}
var foo = new Foo();
foo.version == "2"
serialize(foo) -> "<foo><version>2</version></foo>";
foo = deserialize("<foo></foo>")
foo.version == "1";
foo = deserialize("<foo><version>2</version>");
foo.version == "2";
foo = deserialize("<foo><version>3</version>");
foo.version == "3";
這個問題是當有人創建一個實例時,他們需要設置版本。我希望在構造函數中將版本設置爲最新版本。 – Dave 2013-04-25 17:37:54
構造函數很棘手,因爲'XmlSerializer'總是運行那個... – 2013-04-25 21:24:16