Makale Özeti

Çalışma yapısını inceliyoruz.

Makale

CONFIGURATION MANAGEMENT APPLICATION BLOCK (Konfigürasyon Yönetimi Uygulama Bloğu) - 2

Configuration Management Application Blockun Çalışma Yapısı



Configuration Management Application Block’ın amacı, kolay ve verimli uygulama konfigürasyon verisine erişim imkanı sağlamaktır. Bloğa ilk istek gönderildiğinde, ConfigurationManager isimli sınıf işlemi gerçekleşir ve C# ortamında ise static, VB.NET ortamında ise shared metotlar olan Read ve Write metotları işlemi görür.
Tek operasyon ile bilgi yazabilir veya okuyabiliriz. Herbir konfigürasyon bölümü uygulamanızın .NET konfigürasyon dosyasında tanımlanmıştır ve bunlar isime gore tanımlanmıştır.
Configuration Storage Provider: Okuma ve yazma konfigürasyon bölümleri, tanımlanmış veri saklama ünitelerinden okunur. Örneğin Microsoft SQL Server veya XML dosyalarında bilgiler saklanabilir. Eğer sadece okuma işlemi yapılacaksa Configuration Storage Provider IConfigurationStorageReader arayüzünden implemente edilir ve sadece belirtilmiş veri saklama ortamından veri okuma işlemi yapılabilir.
Veri Saklama Sağlayıcısı: Veri şifreleme ve veriye erişim için kimlik sorgulama sağlar.
Ön bellekleme konfigürasyonu: İstersek konfigürasyonları ön bellekleyebiliriz. Eğer ön bellekleme yapıyorsak, ConfigurationManager sadece ilk istekde konfigürasyon bilgilerini okur, diğer isteklerde ise ön bellekten okur. Eğer ön belleklemezsek her zaman ayarları konfigürasyon dosyasından tekrar okumaya çalışır.



Tüm uygulama blokları kullanışlı ve detaylı dökümanlar sağlar. Configuration Application Block’un en zor bölümü açıkcası konfigürasyon bölümü ayarlarını yapmaktır. Bu dökümanda konfigürasyon ayarlarını yapmak için gerçekten güzel örnekler sağlamaktadır. Sağladığı dökümanlar ile bu zor aşamaları atlatabiliriz.
app.config dosyasında, Configuration Management Application Block’un gerekli tanımlarını gerçekleştiririz. Bu dosya içerisindeki, bölümü Configuration Management Application Block’un en temel veri saklama ve okuma birimidir. configSection, tek bir işlemle okuma veya yazma işlemi gerçekleştirmemizi sağlar. ConfigurationManagement veri bloğunun kullanılması için configSection bölümüne gerekli kodları eklememiz gerekir.

Örneğin;
<section name="applicationConfigurationManagement" type="Microsoft.ApplicationBlocks.ConfigurationManagement.ConfigurationManagerSectionHandler,Microsoft.ApplicationBlocks.ConfigurationManagement, Version=1.0.0.0,Culture=neutral,PublicKeyToken=null" />
<section name="CustomConfigSection" type="Microsoft.ApplicationBlocks.ConfigurationManagement.XmlHashtableSectionHandler, Microsoft.ApplicationBlocks.ConfigurationManagement, Version=1.0.0.0,Culture=neutral,PublicKeyToken=null" />

Buradaki section name alanına applicationConfigurationManagement bilgisini veriyoruz. Bu ifade ile ConfigurationManagementApplicationBlock kullanacağımızı belirtiyoruz.
İkinci eklediğimiz section tag’inde ise, CustomConfigSection olarak belirliyoruz. Burada da bizim konfigürasyon bilgilerimizi nerede saklayacağımızı belirliyoruz. Örneğimizde, XmlHashTable’da saklayacağımızı belirtiyoruz.
Configuration Block, şifreli bilgi saklayabilir. Bu işlemi sadece encrypted özelliğini true yaparak sağlayabiliriz. Yani app.config dosyasında, encrypted özelliğini true yaparsak, şifreli olarak bilgi saklayabiliriz. False ise şifreli saklamaz.

Yeliz Korkmaz, MVP
yelizkorkmaz@tnn.net

Kaynak : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/cmab.asp