2009-09-16 54 views
5

在我的WinForms應用程序中,我有幾個用戶鍵入數據的文本框。我想存儲數據,但我不想使用數據庫。在我的石器時代的C++日子裏,我只是使用.ini。不知何故,app.config似乎並不是存儲這些數據的正確地方。我應該如何在WinForms中存儲每個用戶的數據?

我的其他選擇是什麼?

回答

11

我會說.config文件是正確的地方。請確保使用Settings.settings文件的User範圍區域而不是應用程序範圍。

這適用於簡單的數據類型,當您需要保存固定的值時,因爲您需要在設計時定義要存儲的變量。因此,如果您的文本框是動態創建的,並且您不知道需要存儲的很多值,那麼它並不是非常有用。

使用IsolatedStorage可能是另一個不錯的選擇。您可以使用任何您想要的格式(保留您需要的任何值)創建自己的文件,並將其存儲到本地計算機的「IsolatedStorage」中。

+0

更好的答案! +1。 – 2009-09-16 19:53:15

6

您可以在磁盤上某處創建一個文件夾,並以任何適當的格式(XML,純文本,您的選擇)簡單地編寫一個文件。例如,您可以在Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)指出的路徑下執行此操作。

+0

你和我,我們都這麼想。 :-) +1,並且很好的回答! – 2009-09-16 19:49:35

3

我會看看孤立的存儲。很容易設置每個用戶。而且由於它只需要部分信任,它將適用於任何部署方案。

檢查此introduction

1

在特定用戶的應用程序數據中創建.config或其他數據文件(例如xml)。

使用system.environment.specialfolder獲取ApplicationData文件夾,在此數據文件中爲此特定用戶添加一個帶有您的公司名稱的子文件夾,其中包含您的應用程序名稱的子文件夾。因此,

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\YourCompany\\YourApplication\\YourData.config" 
1

我相信在WinForms 2.0中存儲用戶設置的適當位置將在設置文件(不是配置文件)中。 Here's快速文章的解釋。

2

取決於您想要保存app.config/settings文件的變量/數據的數量可能是理想的地方。

檢出項目屬性中的設置選項卡,並注意您可以設置應用程序設置和用戶設置。應用程序設置影響整個應用程序用戶設置按用戶存儲。

包含用戶設置的app.config部分保存到用戶目錄,當它們在重新啓動應用程序時被保存並重新組合。

檢查this url的介紹,在MSDN上的應用/用戶設置並this SO url了一個類似的問題:

你也可以考慮通過查看存儲在每個用戶的.ini您熟悉的舊.ini文件根據this網址,特殊文件夾枚舉。

相關問題