Cấu Hình Tùy Chỉnh Trong Ứng Dụng .NET

Triển Khai Cấu Hình Tùy Chỉnh Trong .NET

Các ứng dụng .NET thường sử dụng file cấu hình để quản lý giá trị động như chuỗi kết nối cơ sở dữ liệu. Để tăng tính linh hoạt khi làm việc với cấu hình phức tạp, .NET cung cấp các phương pháp tùy biến cấu hình.

Phương Pháp Cấu Hình Thông Dụng

  • connectionStrings/appSettings: Thêm trực tiếp vào file cấu hình chính
  • Thao tác file: Đọc file XML/INI/JSON thông qua xử lý I/O (không khuyến nghị)

Xử Lý Cấu Hình Tùy Chỉnh

Khai báo section trong nút <configSections> - bắt buộc là nút đầu tiên trong <configuration>. Sử dụng ConfigurationManager.GetSection("tên-section") để truy xuất.

1. Cấu Trúc Key-Value

<configSections>
  <section name="CauHinhCapDo" type="System.Configuration.NameValueSectionHandler"/>
</configSections>
<CauHinhCapDo>
  <add key="MauSac" value="Xanh" />
  <add key="KichThuoc" value="L" />
</CauHinhCapDo>
public static Dictionary<string, string> CauHinhCapDo
{
  get 
  {
    var cauHinh = (NameValueCollection)ConfigurationManager.GetSection("CauHinhCapDo");
    return cauHinh.AllKeys.ToDictionary(k => k, k => cauHinh[k]);
  }
}

2. Cấu Trúc Từ Điển

<configSections>
  <section name="CauHinhTuDien" type="System.Configuration.DictionarySectionHandler"/>
</configSections>
<CauHinhTuDien>
  <add key="IP" value="192.168.1.1" />
  <add key="Port" value="8080" />
</CauHinhTuDien>
public static Dictionary<string, string> CauHinhTuDien
{
  get 
  {
    var duLieu = (IDictionary)ConfigurationManager.GetSection("CauHinhTuDien");
    return duLieu.Keys.Cast<string>().ToDictionary(k => k, k => duLieu[k].ToString());
  }
}

3. Cấu Trúc Đơn Thẻ

<configSections>
  <section name="CauHinhDon" type="System.Configuration.SingleTagSectionHandler"/>
</configSections>
<CauHinhDon KichHoat="true" CheDo="ToiUu" />
public static Dictionary<string, string> CauHinhDon
{
  get 
  {
    var bang = (Hashtable)ConfigurationManager.GetSection("CauHinhDon");
    return bang.Keys.Cast<string>().ToDictionary(k => k, k => bang[k].ToString());
  }
}

Sử Dụng File Cấu Hình Riêng

Chỉ định file cấu hình bên ngoài qua thuộc tính configSource:

<configSections>
  <section name="CauHinhNgoai" type="HeThong.CauHinhTuyChinh, UngDung"/>
</configSections>
<CauHinhNgoai configSource="CauHinh\HeThong.config"/>

Nội dung file HeThong.config:

<CauHinhNgoai>
  <add key="TenMien" value="example.com" />
  <add key="PhiênBản" value="2.0" />
</CauHinhNgoai>

Cấu Trúc Nâng Cao

Xây dựng cấu hình tùy biến bằng cách kế thừa các lớp:

  • ConfigurationSection
  • ConfigurationElementCollection
  • ConfigurationElement
  • ConfigurationProperty

Thẻ: .NET-Cấu-hình App.config Tệp-cấu-hình-tùy-chỉnh Cấu-hình-.NET

Đăng vào ngày 22 tháng 5 lúc 05:08