2011-06-13 24 views
41

Web.config dosyasında örnek kodun altında var.Web.config dosyasındaki özel bölümden değerler nasıl okunur?

<configuration> 
     <configSections> 
     <section name="secureAppSettings" type="System.Configuration.NameValueSectionHandler, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
     </configSections> 
<secureAppSettings> 
     <add key="userName" value="username"/> 
     <add key="userPassword" value="password"/> 
    </secureAppSettings> 
    </configuration> 

Benim yeni bölüm secureAppSettings şifresi çözülür ve içindeki iki anahtar yaşıyor.

string userName = System.Configuration.ConfigurationManager.secureAppSettings["userName"]; 
string userPassword = System.Configuration.ConfigurationManager.secureAppSettings["userPassword"]; 

Ama bu alanlar için null dönüyor:

Şimdi benim kodunda, aşağıda gibi bu anahtar bir şey erişmek istediğiniz.

Değerleri nasıl alabilirim?

+0

en kullanışlı ve her zaman çalışan çözüm Bence bu biridir: http://stackoverflow.com/a/28600293/4250041 – benraay

cevap

51

Anahtar/değer çiftleri olarak onları erişebilir:

NameValueCollection section = (NameValueCollection)ConfigurationManager.GetSection("secureAppSettings"); 
string userName = section["userName"]; 
string userPassword = section["userPassword"]; 
+0

öyle appettings bölümünden ayrı bölüm, bu "secureAppSettings" adı verilen yeni bölümdür, appettings'deki değerleri nasıl alabilirim ve ayrıca "secureAppSettings" şimdi de şifrelenmiştir. –

+1

@Manu Üzgünüm, sorunuzu tamamen yanlış okudum, haklısınız. Cevabımı bu değerleri okumak için doğru şekilde güncelledim. –

+0

@Manu, oh man, Tamam: 'var 'yerine' NameValueCollection' yazın. –

İlgili konular