7

Burada, projemde app.config ve accessLevel.config adlı iki uygulama yapılandırma dosyası var. Şimdi OpenExeConfiguration kullanarak app.config.exe file erişebildi, ancak accessLevel.config. Lütfen bu konuda yardım edin.Tek bir projede C# içinde birden çok Yapılandırma dosyasından değerler nasıl okunur?

2 yapılandırma dosyasına sahip olmanın temel nedeni farkı göstermek ve kodu basitleştirmek. C# kodumdaki accessLevel.config kodundaki değerleri okumam gerekiyor.

System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
config.AppSettings.File = "App2.config"; 

cevap

19

here bakınız:

aşağıdaki kodu ama hiçbir faydası çalıştı. senin App.config yılında

koyun bu:

<appSettings file="accessLevel.config"/> 

Ve sonra böyle accessLevel.config adlı başka bir dosya vardır:

<?xml version="1.0" encoding="utf-8" ?> 
<appSettings> 
    <add key="TestSetting" value="TestValue"/> 
</appSettings> 

Ve sonra böyle kodunda sizin yapılandırma değerlerini erişebilir :

string value = ConfigurationManager.AppSettings["TestSetting"]; 

AccessLevel.config öğesinin çıktı dizinine kopyalanacak şekilde ayarlandığından emin olun (Visual Studio'daki dosyaya sağ tıklayın -> Özellikler -> Çıkış dizinine kopyala -> Daha yeni kopyala).

+0

Bu satırı "app.config.exe" dosyasında mı olmalı? – Praveen

+0

Düzenlediniz ve düzelttik - işe yarayabilecek misiniz? Başka bir dosyaya veya başka bir yapılandırma bölümüne taşınmaya çalıştığınız appSettings mi? Her iki durumda da aynı prensip geçerlidir. – Michael

+0

Bu cevap kabul edilmeyi hak ediyor. @Praveen –

İlgili konular