2010-11-19 15 views
1

Yapılandırma dosyası.App.Config içinden okuma ayarları

C# içindeki System.Configuration.ConfigurationManager sınıfını kullanarak kullanıcı adı ve parola değerlerini nasıl okumalıyım? Birkaç şey denedim ama boşuna.

App.config aşağıda verilmiştir.

<configuration> 
    <configSections> 
     <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > 
      <section name="Fulfillment.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
     </sectionGroup> 
    </configSections> 
    <applicationSettings> 
     <Fulfillment.Properties.Settings> 
      <setting name="username" serializeAs="String"> 
       <value>MyUserName</value> 
      </setting> 
      <setting name="password" serializeAs="String"> 
       <value>MyPassword</value> 
      </setting> 
     </Fulfillment.Properties.Settings> 
    </applicationSettings> 
</configuration> 

Lütfen yardım edin. Teşekkürler.

+0

Bu geçerli bir XML dosyası değil. Kapanış 'applicationSettings' öğesini görmüyorum. – Oded

+0

@Oded, açıkça onun web.config dosyasından bir alıntıdır. Kapalı olmayan birden çok düğüm var. Sadece alakalı olduğunu hissettiğini gönderiyor. –

+1

@ mjw06d - Bir süredir böyle varsayımlarda bulunmamayı öğrendim. Bunun bir alıntı olduğunu söylemiş olsaydı, o zaman iyi olur. – Oded

cevap

2

benim uygulamada Kullanıcı değişkenleri kullanın ve bunları erişmek: PropertyName sizin durumunuzda KullanıcıAdım veya MyPassword olacağını

var PropertyValue = Properties.Settings.Default.PropertyName 

. değerler dosyasının appsettings bölümünde ise

+0

Üzgünüz, yayınınızı düzenlediğinizi ve uygulama değerlerini kullandığınızı görüyorum. – Dave

+0

Tamam teşekkürler, bu çalışır. Bunu bilmiyordum. Ancak bunları ConfigurationManager sınıfını kullanarak okumak için bir yol olmalı. yapmamalı mı? –

+1

ConfigurationManager'ı daha önce kullanmadım, ancak FYI, yapmak istediğim bir başka nokta da muhtemelen userSettings ve * not * appSettings kullanmak isteyeceğinizdir. Benim deneyimime göre, appSettings sadece Visual Studio'daki değerleri değiştirerek ve uygulamanızı yeniden derleyerek değiştirilebilir. appSettings, doğrudan .exe.config dosyasını değiştirmenize izin verir. – Dave

7

şu şekildedir:

<appSettings> 
    <add key="myUsername" value="david"/> 
    <add key="myPassword" value="iLikeHalibut"/> 
</appSettings> 

Bunları okuyabilir:

string myUsername = System.Configuration.ConfigurationManager.AppSettings["myUsername"]; 

Emin montaj yapmak gerekir Eğer programlama içeren vardır System.Configuration.dll dosyasına başvuru (her zaman varsayılan olarak yoktur).

+0

Evet, bu app.config ile karşılaştım ve ConfigurationManager'ı kullanarak boşuna hiçbir şey yapmaya çalışmadım. Ancak, projenizle birlikte Properties sınıfından okunabilen Ayarlar sınıfı hakkında bir şey yoktu. Hepinize teşekkürler. –