Jika Anda memerlukan operasi yang fleksibel dan membaca dan menulis file konfigurasi di .net1.1, ini sangat tidak nyaman. Umumnya, kelas manajemen file konfigurasi dikemas dalam proyek untuk melakukan operasi membaca dan menulis. Di .net2.0, kelas ConfigurationManager dan WebConfigurationManager dapat digunakan untuk mengelola file konfigurasi dengan sangat baik. Kelas ConfigurationManager ada di System.Configuration dan WebConfigurationManager ada di System.Web.Configuration. Menurut MSDN, untuk konfigurasi aplikasi Web, disarankan untuk menggunakan kelas System.Web.Configuration.WebConfigurationManager alih-alih kelas System.Configuration.ConfigurationManager.
Di bawah ini saya memberikan contoh sederhana untuk mengilustrasikan cara menggunakan WebConfigurationManager untuk mengoperasikan file konfigurasi:
//Buka file konfigurasi
Konfigurasi konfigurasi = WebConfigurationManager.OpenWebConfiguration("~");
//Dapatkan node appSettings
AppSettingsSection appSection = (AppSettingsSection)config.GetSection("appSettings");
//Tambahkan elemen di node appSettings
appSection.Settings.Add("addkey1", "nilai kunci1");
appSection.Settings.Add("addkey2", "nilai kunci2");
config.Save();
Setelah menjalankan kode, Anda dapat melihat perubahan pada file konfigurasi:
<appSettings>
<tambahkan kunci="tambahkankunci1" nilai="nilai kunci1" />
<tambahkan kunci="tambahkankunci2" nilai="nilai kunci2" />
</Pengaturan Aplikasi>
Juga sangat mudah untuk mengubah dan menghapus node atau atribut:
//Buka file konfigurasi
Konfigurasi konfigurasi = WebConfigurationManager.OpenWebConfiguration("~");
//Dapatkan node appSettings
AppSettingsSection appSection = (AppSettingsSection)config.GetSection("appSettings");
//Hapus elemen di node appSettings
appSection.Pengaturan.Hapus("addkey1");
//Ubah elemen di node appSettings
appSection.Settings["addkey2"].Value = "Ubah nilai kunci2";
config.Simpan();
Berkas konfigurasi:
<Pengaturan Aplikasi>
<add key="addkey2" value="Ubah nilai key2" />
</Pengaturan Aplikasi>
Referensi: http://msdn2.microsoft.com/en-us/library/ms228060.aspx