7

我們有來自ApplicationSettingsBase的應用程序設置。當我們把我們的應用程序的新版本中,我們需要調用:.NET ApplicationSettingsBase我應該在每次加載時調用Upgrade()嗎?

// 
    // Summary: 
    //  Updates application settings to reflect a more recent installation of the 
    //  application. 
    public virtual void Upgrade(); 

(從元數據)

現在也有一些棘手的方法來確定,如果你的設置需要進行升級,如this post這在我看來只會一次升級您的設置。現在,我可以將當​​前版本的應用程序存儲在設置中,並在每次實例化設置時進行比較,如果它與當前版本不同,則可以升級。

我的問題是爲什麼不是每次我實例化設置時都調用Upgrade()?這樣我知道我永遠不會過時。

+1

鏈接不再起作用 – eric1825 2016-04-06 21:29:24

+1

我從Web存檔中找到了一個緩存副本,因此更改了該鏈接。當然是 – 2016-04-08 03:29:09

回答

5

鏈接文章中描述的方法確實有效。我自己使用過這種方法。當您的應用程序版本更改時,設置將重置爲默認值,並且UpdateRequired屬性將爲true

因此,不必每次啓動應用程序時都需要撥打Upgrade

+0

!當安裝新版本時,會創建新版本的設置。我以爲舊版本會實例化,然後升級到新的設置,實際上新的設置將導入舊的設置。 – 2010-08-17 01:19:02

相關問題