2013-10-25 59 views
1

我已經使用C#實現了使用自定義部分的自定義文件配置。 我遇到的主要問題是實現某種版本識別配置加載器。 自動變更,但我們需要使它們可用。 是否有任何文檔指出在配置中進行某種版本控制的方向?C#自定義配置版本

我會舉兩個例子來說明我的問題: - key [「key1」]從布爾類型更改爲int類型。 - 密鑰[「key2」]強制不再存在

謝謝。

回答

0

你可以有每個設置的默認值的概念。如果你引入一個新的設置,而舊的配置文件沒有它,那麼它會使用默認值。同樣,如果你從代碼中刪除一個設置,那麼它在配置文件中的存在將是無害的,它將被忽略。

如果你想改變給定設置的工作方式(類型或格式),那麼它會更棘手一些。您可以嘗試解析該值,如果格式不正確,您可以忽略它並使用默認值。

+0

那麼......我已經有一個版本的領域。我認爲最好的辦法是解析conf的值,並根據版本字段消除/轉換字段。 – user2674293

0

我傾向於將某種版本的標題添加到配置中,並在應用程序中保留其架構的歷史記錄。這在某些方面可能會很麻煩,但至少您不必猜測舊值的含義。