2011-10-25 41 views
0

我有一個網格,當用戶關閉窗體,我要保存誰已登錄用戶的一些設置,我已經有2種實現方法,但我想知道哪裏來實現這個功能。哪裏可以實施保存用戶特定設置?

  • 要我創建了兩種方法
  • 我應該創建一個新的類,並命名一個像UserSettingsManager靜態實用工具類?

現在我有兩種方法,但我可以想象,我將來需要更多的方法。我該怎麼辦?

編輯: 我已經看到了幾個答案(日Thnx爲該),但你也說你爲什麼會去那個選項?

+0

D'哦。對不起,發佈了一個答案,但沒有注意到「用戶特定」部分。排隊刪除...:p –

回答

1

我會去的UserSettingsManager,聽起來很有道理。

避免靜態類,除非絕對必要的,因爲這樣的類不太容易測試/模擬/高於正常上課注入。

+1

您的最後一句話太籠統了。如果靜態類只包含與系統無關的不可變狀態,或者根本沒有狀態,則靜態類非常好。當然,這裏的狀態既是系統依賴的也是可變的,所以在這裏避免它們是正確的選擇。 – CodesInChaos

1

我會選擇第二種方法,因爲靜態類很難模擬。

0

至於這種功能所需要的狀態是在當前的Windows主體對象已可提供,靜態函數靜態類就可以了。

0

只要做你能想到的最簡單的事情。如果靜態工具類使用最少量的代碼,那麼就去做吧。

該應用程序似乎很簡單,這應該沒問題。有時候,在以某種方式進行編碼並使用這些方法後,您會突然發現一個更好的位置。

如果在未來,你有節能設置的另外一種途徑(比如,不同的文件格式或Web服務),那麼你就可以開始考慮重構它。和總是重構與使事情更簡單的目標!

0

Windows提供具有正確設置權限的文件夾來存儲用戶特定的信息。

使用Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)得到相應的路徑。

封裝在一個類如UserSettingsManager ...在這種情況下,避免static,因爲這些系統是依賴和可變的。

一些參考:

相關問題