当前位置: 首页>>代码示例>>C#>>正文


C# AppSettingsSection类代码示例

本文整理汇总了C#中System.Configuration.AppSettingsSection的典型用法代码示例。如果您正苦于以下问题:C# AppSettingsSection类的具体用法?C# AppSettingsSection怎么用?C# AppSettingsSection使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


AppSettingsSection类属于System.Configuration命名空间,在下文中一共展示了AppSettingsSection类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: IntializeConfigurationFile

//引入命名空间
using System;
using System.Collections.Specialized;
using System.Configuration;
using System.Text;
using System.IO;

// IMPORTANT: To compile this example, you must add to the project 
// a reference to the System.Configuration assembly.
//

class UsingAppSettingsSection
{
    #region UsingAppSettingsSection

    // This function shows how to use the File property of the
    // appSettings section.
    // The File property is used to specify an auxiliary 
    // configuration file.
    // Usually you create an auxiliary file off-line to store 
    // additional settings that you can modify as needed without
    // causing an application restart,as in the case of a Web 
    // application.
    // These settings are then added to the ones defined in the
    // application configuration file.
    static void  IntializeConfigurationFile()
    {
        // Create a set of unique key/value pairs to store in
        // the appSettings section of an auxiliary configuration
        // file.
        string time1 = String.Concat(DateTime.Now.ToLongDateString(),
                               " ", DateTime.Now.ToLongTimeString());

        string time2 = String.Concat(DateTime.Now.ToLongDateString(),
                               " ", new DateTime(2009, 06, 30).ToLongTimeString());
       
        string[] buffer = {"<appSettings>",
        "<add key='AuxAppStg0' value='" + time1 + "'/>", 
        "<add key='AuxAppStg1' value='" + time2 + "'/>",
        "</appSettings>"};

        // Create an auxiliary configuration file and store the
        // appSettings defined before.
        // Note creating a file at run-time is just for demo 
        // purposes to run this example.
        File.WriteAllLines("auxiliaryFile.config", buffer);
        
        // Get the current configuration associated
        // with the application.
        System.Configuration.Configuration config =
           ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

        // Associate the auxiliary with the default
        // configuration file. 
        System.Configuration.AppSettingsSection appSettings = config.AppSettings;
        appSettings.File = "auxiliaryFile.config";
        
        // Save the configuration file.
        config.Save(ConfigurationSaveMode.Modified);

        // Force a reload in memory of the 
        // changed section.
        ConfigurationManager.RefreshSection("appSettings");
    }

    // This function shows how to write a key/value
    // pair to the appSettings section.
    static void WriteAppSettings()
    {
        try
        {
            // Get the application configuration file.
            System.Configuration.Configuration config =
               ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

            // Create a unique key/value pair to add to 
            // the appSettings section.
            string keyName = "AppStg" + config.AppSettings.Settings.Count;
            string value = string.Concat(DateTime.Now.ToLongDateString(),
                           " ", DateTime.Now.ToLongTimeString());

            // Add the key/value pair to the appSettings 
            // section.
            // config.AppSettings.Settings.Add(keyName, value);
            System.Configuration.AppSettingsSection appSettings = config.AppSettings;
            appSettings.Settings.Add(keyName, value);

            // Save the configuration file.
            config.Save(ConfigurationSaveMode.Modified);

            // Force a reload in memory of the changed section.
            // This to read the section with the
            // updated values.
            ConfigurationManager.RefreshSection("appSettings");

            Console.WriteLine(
                "Added the following Key: {0} Value: {1} .", keyName, value);
        }
        catch (Exception e)
        {
            Console.WriteLine("Exception raised: {0}",
                e.Message);
        }
    }

    // This function shows how to read the key/value
    // pairs (settings collection)contained in the 
    // appSettings section.
    static void ReadAppSettings()
    {
        try
        {

            // Get the configuration file.
            System.Configuration.Configuration config =
                ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

            // Get the appSettings section.
            System.Configuration.AppSettingsSection appSettings =
                (System.Configuration.AppSettingsSection)config.GetSection("appSettings");

            // Get the auxiliary file name.
            Console.WriteLine("Auxiliary file: {0}", config.AppSettings.File);

            // Get the settings collection (key/value pairs).
            if (appSettings.Settings.Count != 0)
            {
                foreach (string key in appSettings.Settings.AllKeys)
                {
                    string value = appSettings.Settings[key].Value;
                    Console.WriteLine("Key: {0} Value: {1}", key, value);
                }
            }
            else
            {
                Console.WriteLine("The appSettings section is empty. Write first.");
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("Exception raised: {0}",
                e.Message);
        }
    }

    #endregion UsingAppSettingsSection

    #region ApplicationMain

    // This class obtains user's input and provide feedback.
    // It contains the application Main.
    class ApplicationMain
    {
        // Display user's menu.
        public static void UserMenu()
        {
            StringBuilder buffer = new StringBuilder();

            buffer.AppendLine("Please, make your selection.");
            buffer.AppendLine("1    -- Write appSettings section.");
            buffer.AppendLine("2    -- Read  appSettings section.");
            buffer.AppendLine("?    -- Display help.");
            buffer.AppendLine("Q,q  -- Exit the application.");

            Console.Write(buffer.ToString());
        }

        // Obtain user's input and provide
        // feedback.
        static void Main(string[] args)
        {
            // Define user selection string.
            string selection;

            // Get the name of the application.
            string appName =
              Environment.GetCommandLineArgs()[0];

            IntializeConfigurationFile();

            // Get user selection.
            while (true)
            {

                UserMenu();
                Console.Write("> ");
                selection = Console.ReadLine();
                if (!string.IsNullOrEmpty(selection))
                    break;
            }

            while (selection.ToLower() != "q")
            {
                // Process user's input.
                switch (selection)
                {
                    case "1":
                        WriteAppSettings();
                        break;

                    case "2":
                        ReadAppSettings();
                        break;

                    default:
                        UserMenu();
                        break;
                }
                Console.Write("> ");
                selection = Console.ReadLine();
            }
        }
    }
    #endregion ApplicationMain
}
开发者ID:.NET开发者,项目名称:System.Configuration,代码行数:215,代码来源:AppSettingsSection


注:本文中的System.Configuration.AppSettingsSection类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。