Yapılandırma dosyalarını kullanarak uygulamaları yapılandırma

.NET Framework, geliştiricilere ve yöneticilere uygulamaların yapılandırma dosyalarında nasıl çalıştığı üzerinde denetim ve esneklik sağlar. Yapılandırma dosyaları gerektikçe değiştirilebilen XML dosyalarıdır. Yönetici, bir uygulamanın erişebileceği korumalı kaynakları, bir uygulamanın hangi derleme sürümlerini kullanacağını ve uzak uygulamaların ve nesnelerin nerede bulunduğunu denetleyebilir. Geliştiriciler yapılandırma dosyalarına ayarları koyarak bir ayarın her değiştiğinde bir uygulamayı yeniden derleme gereksinimini ortadan kaldırır. Bu bölümde nelerin yapılandırılabildiği ve bir uygulamayı yapılandırmanın neden yararlı olabileceği açıklanmaktadır.

Not

Yönetilen kod, yapılandırma dosyalarındaki System.Configuration ayarları okumak için ad alanında sınıfları kullanabilir, ancak bu dosyalara ayarları yazmak için kullanamaz.

Bu makalede yapılandırma dosyalarının söz dizimi açıklanır ve üç tür yapılandırma dosyası hakkında bilgi sağlanır: makine, uygulama ve güvenlik.

Yapılandırma dosyası biçimi

Yapılandırma dosyaları, yapılandırma bilgisini ayarlayan mantıksal veri yapıları olan öğeleri içerir. Bir yapılandırma dosyası içine, bir öğenin başlangıç ve bitişini işaretlemek için etiketleri kullanırsınız. Örneğin, <runtime> öğesi alt öğelerden</runtime><runtime> oluşur. Boş bir öğe veya <runtime></runtime>olarak <runtime/> yazılabilir.

Tüm XML dosyalarında olduğu gibi, yapılandırma dosyalarındaki söz dizimi büyük küçük harfe duyarlıdır.

Yapılandırma ayarlarını, bir öğenin başlangıç etiketinin içindeki ad/değer çiftleri olan önceden tanımlı öznitelikleri kullanarak belirlersiniz. Aşağıdaki örnek, çalışma zamanının bir derlemeyi nerede bulabileceğini <codeBase> belirten öğesi için iki özniteliği (version ve href) belirtir (daha fazla bilgi için bkz. Derlemenin Konumunu Belirtme).

<codeBase version="2.0.0.0"  
          href="http://www.litwareinc.com/myAssembly.dll"/>  

Makine yapılandırma dosyaları

Machine.configmakine yapılandırma dosyası, bilgisayarın tamamına uygulanan ayarları içerir. Bu dosya %runtime yükleme yolu%\Config dizininde bulunur. Machine.config makine genelinde derleme bağlama, yerleşik uzaktan iletişim kanalları ve ASP.NET için yapılandırma ayarlarını içerir.

Yapılandırma sistemi önce appSettings> öğesinin makine yapılandırma dosyasına ve bir geliştiricinin< tanımlayabileceği diğer yapılandırma bölümlerine bakar. Ardından uygulama yapılandırma dosyasına bakar. Makine yapılandırma dosyasını yönetilebilir tutmak için, bu ayarları uygulama yapılandırma dosyasında tutmak en iyisidir. Ancak, ayarları makine yapılandırma dosyasına koymak sisteminizi daha sürdürülebilir yapabilir. Örneğin, eğer hem istemci hem de sunucu uygulamanızın kullandığı bir üçüncü parti bileşeniniz varsa, o bileşen için ayarları tek bir yere koymak daha kolaydır. Bu durumda, aynı ayarları iki farklı dosyada tutmak yerine makine yapılandırma dosyasında tutmak daha uygundur.

Not

Bir uygulamayı XCOPY kullanarak dağıtmak, makine yapılandırma dosyasındaki ayarları kopyalamaz.

Ortak dil çalışma zamanının derleme bağlaması için makine yapılandırma dosyasını nasıl kullandığı hakkında daha fazla bilgi için bkz . Çalışma Zamanı Derlemeleri Nasıl Bulur?

Uygulama yapılandırma dosyaları

Bir uygulama yapılandırma dosyası belirli bir uygulamaya özel ayarları içerir. Bu dosya ortak dil çalışma zamanının okuduğu yapılandırma ayarlarını (derleme bağlama ilkesi, uzaktan iletişim nesneleri vs.) ve uygulamanın okuyabileceği ayarları içerir.

Uygulama yapılandırma dosyasının adı ve konumu, uygulamanın konağına bağlıdır:

  • Yürütülebilir Konaklı Uygulama

    Bu uygulamaların iki yapılandırma dosyası vardır: geliştirme sırasında geliştirici tarafından değiştirilen bir kaynak yapılandırma dosyası ve uygulamayla birlikte dağıtılan bir çıkış dosyası.

    Visual Studio'de geliştirirken uygulamanızın kaynak yapılandırma dosyasını proje dizinine yerleştirin ve Çıkış Dizinine Kopyala özelliğini Her zaman kopyala veya daha yeniyse Kopyala olarak ayarlayın. Varsayılan olarak, yapılandırma dosyasının adı App.config.

    Uygulamayla dağıtılan çıkış yapılandırma dosyasını oluşturmak için Visual Studio kaynak yapılandırma dosyasını derlenen derlemenin yerleştirildiği dizine kopyalar. Bu dosya, yourappname>.exe.configolarak adlandırılır<. Örneğin, myApp.exe adlı bir uygulamanın myApp.exe.configadlı bir çıkış yapılandırma dosyası olacaktır.

    Bazı durumlarda, Visual Studio çıkış yapılandırma dosyasını değiştirebilir; daha fazla bilgi için Derleme Sürümlerini Yeniden Yönlendirme makalesinin uygulama düzeyinde derleme sürümlerini yeniden yönlendirme bölümüne bakın.

  • ASP.NET tarafından barındırılan uygulama

    ASP.NET yapılandırma dosyaları hakkında daha fazla bilgi için bkz. yapılandırma Ayarlar ASP.NET.

  • Internet Explorer tarafından barındırılan uygulama

    Internet Explorer'da barındırılan bir uygulamanın yapılandırma dosyası varsa, bu dosyanın konumu aşağıdaki söz dizimine sahip bir <link> etikette belirtilir: <link rel="*ConfigurationFileName*" href="*location*">

    Bu etikette, location yapılandırma dosyasının URL'sidir. Bu, uygulama temel dizinini ayarlar. Yapılandırma dosyası uygulamayla aynı web sitesinde yer almalıdır.

Güvenlik yapılandırma dosyaları

Güvenlik yapılandırma dosyaları bir ilke düzeyiyle ilişkili kod grubu hiyerarşisi ve izin kümeleri hakkında bilgi içerir. İlke değişikliklerinin güvenlik yapılandırma dosyalarını bozmadığından emin olmak için güvenlik ilkesini değiştirmek için Kod Erişimi Güvenlik İlkesi aracını (Caspol.exe) kullanmanızı kesinlikle öneririz.

Not

.NET Framework 4'den başlayarak, güvenlik yapılandırma dosyaları yalnızca güvenlik ilkesi değiştirildiğinde bulunur.

Güvenlik yapılandırma dosyaları aşağıdaki konumlarda bulunur:

  • Enterprise ilke yapılandırma dosyası: %runtime-install-path%\Config\Enterprisesec.config

  • Makine ilkesi yapılandırma dosyası: %runtime-install-path%\Config\Security.config

  • Kullanıcı ilkesi yapılandırma dosyası: %USERPROFILE%\Application data\Microsoft\CLR security config\vxx.xx\Security.config

Ayrıca bkz.