首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

Visual Studio 2005 設定檔新功能:強型別、範圍隔離與 GUI 編輯器

     編輯:關於.NET

.NET 2.0 / VS 2005 對 System.Configuration 進行重大升級,引入強型別設定、應用程式/使用者範圍隔離、屬性編輯器 GUI,徹底改善桌面與 Web 應用的設定管理體驗。

兩大核心創新

特性舊版痛點新版方案
強型別僅支援字串,需手動轉型/剖析內建基本類型、連線字串、URL 等序列化,自動轉型
範圍隔離所有設定混雜單一檔案Application 範圍:唯讀、機器級 (連線字串)
User 範圍:可寫、使用者級 (視窗位置、MRU),自動存入 user.config

屬性編輯器:零手工編輯 XML

  1. 方案總管雙擊 Settings.settings 開啟設計介面
  2. 表格式定義:名稱、類型、範圍、預設值
  3. 連線字串類型:下拉選單自動啟動標準連線屬性對話框
屬性編輯器
選擇資料來源
連線屬性對話框

自動生成代碼結構

  • app.config:設計時預設值 (Application 範圍)
  • Settings.Designer.cs:Settings 類別繼承 ApplicationSettingsBase,每個設定對應強型別屬性,標註 [UserScopedSettingAttribute] 或 [ApplicationScopedSettingAttribute]
  • 執行時透過 Properties.Settings.Default.PropertyName 存取

範例:ThisConfigEditor 列舉與修改設定

private void PopulateListView() {
    var settings = Properties.Settings.Default;
    foreach (SettingsProperty prop in settings.Properties) {
        // 依範圍過濾 (All/Application/User)
        bool match = ...; 
        if (match) {
            var item = new ListViewItem(prop.Name);
            item.SubItems.Add(prop.PropertyType.ToString());
            item.SubItems.Add(settings[prop.Name]?.ToString());
            item.Tag = prop;
            listViewSettings.Items.Add(item);
        }
    }
}

修改 User 範圍設定時,框架自動在使用者設定檔目錄建立/更新 user.config:

修改 User 設定
user.config 位置

路徑包含版本號,確保版本升級時設定隔離不衝突。

Compact Framework 遺憾

.NET CF 2.0 Beta 文件雖列出 System.Configuration 命名空間,但實際不支援,僅能靠登錄檔或自訂 XML 處理,期待正式版補齊。

總結

VS 2005 設定系統實現「設計時強型別、執行時範圍隔離、使用者資料自動遷移」,配合 GUI 編輯器,讓設定管理從易錯的 XML 手工操作進化為型別安全的屬性存取,是桌面應用不可或缺的生產力工具。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved