我有一個自定義的Fraction類,我在整個項目中都使用它。很簡單,它由一個構造函數組成,接受兩個int並存儲它們。我想使用DataContractSerializer來序列化我的項目中使用的對象,其中一些包括分區作爲字段。理想情況下,我想能夠序列化這樣的對象是這樣的:通過DataContract序列化爲XML:自定義輸出?
<Object>
...
<Frac>1/2</Frac> // "1/2" would get converted back into a Fraction on deserialization.
...
</Object>
與此相反:
<Object>
...
<Frac>
<Numerator>1</Numerator>
<Denominator>2</Denominator>
</Frac>
...
</Object>
有沒有辦法做到這一點使用DataContracts?
我想這樣做,因爲我打算讓XML文件用戶可編輯(我將它們用作音樂遊戲的輸入,它們本質上充當了notecharts),並且希望保留對最終用戶來說盡可能簡潔,所以他們不需要處理儘可能多的文字牆。
編輯:我也應該注意到,目前,我有我的Fraction類爲不可變的(所有字段爲readonly
),因此能夠改變現有分數的狀態是不可能的。不過,返回一個新的Fraction對象是可以的。
你介意解釋一下爲什麼你更喜歡那種格式的輸出嗎?它可能會產生更多相關的答案,或者指向一個你沒有想到的方向。 – shaunmartin 2010-10-26 03:11:34
@shaunmartin好點,重讀我的問題我有點含糊。我會稍微編輯一下。 – 2010-10-26 05:21:47