zoukankan      html  css  js  c++  java
  • ConfigurationManager.AppSettings Property

    在app.config文件中添加如下配置

     <appSettings>
        <add  key="Server" value="127.0.0.1"/>
        <add  key="Port" value="2020"/>
      </appSettings>

    访问方式(需要添加System.Configuration.dll的引用)

      string server = ConfigurationManager.AppSettings["Server"];
      int port = Convert.ToInt32(ConfigurationManager.AppSettings["Port"]);

    https://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager.appsettings(v=vs.110).aspx

    Gets the AppSettingsSection data for the current application's default configuration.

    Namespace:   System.Configuration
    Assembly:  System.Configuration (in System.Configuration.dll)

    public static NameValueCollection AppSettings { get; }

    Property Value

    Type: System.Collections.Specialized.NameValueCollection

    Returns a NameValueCollection object that contains the contents of the AppSettingsSection object for the current application's default configuration.

    Exceptions

    ConfigurationErrorsException

    Could not retrieve a NameValueCollection object with the application settings data.

    Remarks

    AppSettingsSection object contains the contents of the configuration file's appSettings section.

    The first example shows a simple console application that reads application settings, adds a new setting, and updates an existing setting.

    using System;
    using System.Configuration;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                ReadAllSettings();
                ReadSetting("Setting1");
                ReadSetting("NotValid");
                AddUpdateAppSettings("NewSetting", "May 7, 2014");
                AddUpdateAppSettings("Setting1", "May 8, 2014");
                ReadAllSettings();
            }
    
            static void ReadAllSettings()
            {
                try
                {
                    var appSettings = ConfigurationManager.AppSettings;
    
                    if (appSettings.Count == 0)
                    {
                        Console.WriteLine("AppSettings is empty.");
                    }
                    else
                    {
                        foreach (var key in appSettings.AllKeys)
                        {
                            Console.WriteLine("Key: {0} Value: {1}", key, appSettings[key]);
                        }
                    }
                }
                catch (ConfigurationErrorsException)
                {
                    Console.WriteLine("Error reading app settings");
                }
            }
    
            static void ReadSetting(string key)
            {
                try
                {
                    var appSettings = ConfigurationManager.AppSettings;
                    string result = appSettings[key] ?? "Not Found";
                    Console.WriteLine(result);
                }
                catch (ConfigurationErrorsException)
                {
                    Console.WriteLine("Error reading app settings");
                }
            }
    
            static void AddUpdateAppSettings(string key, string value)
            {
                try
                {
                    var configFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                    var settings = configFile.AppSettings.Settings;
                    if (settings[key] == null)
                    {
                        settings.Add(key, value);
                    }
                    else
                    {
                        settings[key].Value = value;
                    }
                    configFile.Save(ConfigurationSaveMode.Modified);
                    ConfigurationManager.RefreshSection(configFile.AppSettings.SectionInformation.Name);
                }
                catch (ConfigurationErrorsException)
                {
                    Console.WriteLine("Error writing app settings");
                }
            }
        }
    }
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <startup> 
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
        </startup>
      <appSettings>
        <add key="Setting1" value="May 5, 2014"/>
        <add key="Setting2" value="May 6, 2014"/>
      </appSettings>
    </configuration>

    How to find path of active app.config file?

    Try this

    AppDomain.CurrentDomain.SetupInformation.ConfigurationFile

    Hope it helps

  • 相关阅读:
    (一) kinect概述
    (五)摇杆/按钮/触摸板
    (四)Trigger
    (三)快速添加touch事件
    (二)简单触控
    Java程序设计当堂测试 9.20
    Java程序设计当堂测试感受
    暑假生活第八周总结
    暑假生活第七周总结
    暑假生活第六周总结
  • 原文地址:https://www.cnblogs.com/chucklu/p/5280043.html
Copyright © 2011-2022 走看看