简体   繁体   中英

can't read variables out of app.config

what I have in app.config is this

<?xml version="1.0"?>
<configuration>
   <configSections>
      <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
          <section name="Porject.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
     </sectionGroup>
</configSections>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>
  <applicationSettings>
    <Porject.Properties.Settings>
        <setting name="PhotoLocation" serializeAs="String">
            <value>.\photos\</value>
        </setting>
    </Porject.Properties.Settings>
</applicationSettings>

<connectionStrings>
   <add name="****" connectionString="Data Source=***;Initial Catalog=****;User ID=***;Password=***" />
</connectionStrings>

</configuration>

and this is how I call the PhotoLocation:

  string s = ConfigurationManager.AppSettings["PhotoLocation"];

When I make a request to get the connectionstring, there is no problem and it works fine; but when I requst the PhotoLocation it returns null. Also the ConfigurationManager.AppSettings.Count returns 0.

Does anyone have an idea on what I'm doing wrong?

simply add this in your App config file

<appSettings>

    <add key="PhotoLocation" value=".\photos\"/>

<appSettings>

ConfigurationManager.AppSettings reads (as the name might suggest) the AppSettings block of your configuration.

Given you've created your own section, you want to use var section = ConfigurationManager.GetSection("Porject.Properties.Settings") and read the values from that section.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM