2013-11-20 60 views
0

我發佈了一個windows phone應用程序,現在我即將發佈我的第二個版本,問題是我有一個存儲信息的XML文件,現在該XML中的某些元素已更改什麼是XML的兩個版本之間更新的最佳/最安全的方式,我想遷移從XML文件中的設置是所有準備安裝到新的XML文件,而不會丟失設置,這可能嗎?更新不同應用程序版本之間的XML文件

會真的很感謝你的幫助

問候!

+0

你有多少改變了它和您使用什麼方法進行反序列化? – Gusdor

+0

我將一些設置移動到另一個XML文件,並添加和刪除了一些設置,xmlreader.ReadElementContentAs這是我加載設置的方式 –

回答

1

作者爲XML文件(S)的每個版本的模式。根據哪個模式驗證選擇您的反序列化/加載方法。

在未來,考慮一個版本號爲您的文檔的根元素的屬性。

+0

我確實希望避免使用基於版本號的所有不同加載方法,我認爲我要做的是將已刪除的元素保留在那裏,並將它們作爲折舊評論,然後添加當他們不再 –

+0

@OliverCiappara找到感謝您的意見新的元素,這取決於你的反序列化方法。如果使用'XmlSerializer',則跳過缺失的元素。你可以在類的構造函數中設置默認值。 – Gusdor

+0

我正在使用xmlReader,並在try catch上添加缺少的元素 –

1

確保您的應用程序可以檢測XML文件的版本是否爲舊版本,如果是這樣地圖並保存新的版本,然後再進行正常。

+0

我可以檢測到的版本,但我希望更通用的東西,而不是必須保持每個版本的「讀取」能夠並遷移 –

+0

假設您的新版本應該是舊版本功能的擴展。應該很簡單,新版本的XML文件具有與舊版本相同的核心元素。 – vogomatix

相關問題