ConfigurationManager.AppSettings的使用-2021-02-14

ConfigurationManger的使用

  1. 环境
    .net core 3.1 > .net core 3.1 控制台应用程序
  2. 先引入using System.Configuration;命名空间
    NuGet > System.Configuration.ConfigurationManager 安装
    ConfigurationManager.AppSettings的使用-2021-02-14
    app.config是图表配置文件

下面是一个“简单工厂模式”示例,关于图表库

Program.cs 入口文件

using System;
using System.Configuration;

/// <summary>
/// 简单工厂模式示例
/// 简单图表库工厂
/// </summary>
namespace SimpleChartFactory
{
    class Program
    {
        /// <summary>
        /// 入口
        /// 客户端测试类
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            Chart chart;
            #region 不符合开闭原则的代码
            //chart = ChartFactory.GetChart("pie");  //通过静态工厂方法创建产品
            #endregion

            Console.WriteLine("-----------------------以下是开闭原则的代码---------------------------------");
            #region 读取配置文件
            string chartStr = ConfigurationManager.AppSettings["chartType"];
            chart = ChartFactory.GetChart(chartStr);
            #endregion

            chart.Display();

            Console.Read();
        }
    }
}

Chart.cs

namespace SimpleChartFactory
{
    /// <summary>
    /// 图表库
    /// 抽象图表接口,充当产品抽象类
    /// </summary>
    interface Chart
    {
        void Display(); //显示图库
    }
}

ChartFactory.cs

using System;

namespace SimpleChartFactory
{
    /// <summary>
    /// 图表工厂类
    /// </summary>
    class ChartFactory
    {
        //静态工厂方法
        public static Chart GetChart(string type)
        {
            Chart chart = null;
            if (type.Equals("histogram"))
            {
                chart = new HistogramChart();
                Console.WriteLine("初始化设置柱状图!");
            }
            else if (type.Equals("pie"))
            {
                chart = new PieChart();
                Console.WriteLine("初始化设置饼状图!");
            }
            else if (type.Equals("line"))
            {
                chart = new LineChart();
                Console.WriteLine("初始化设置折线图!");
            }
            return chart;
        }
    }
}

HistogramChart.cs

using System;
namespace SimpleChartFactory
{
    /// <summary>
    /// 柱状图类
    /// 充当具体产品类
    /// </summary>
    class HistogramChart : Chart
    {
        public HistogramChart()
        {
            Console.WriteLine("创建柱状图!");
        }
        public void Display()
        {
            Console.WriteLine("显示柱状图!");
        }
    }
}

LineChart.cs

using System;

namespace SimpleChartFactory
{
    /// <summary>
    /// 折线图类
    /// 充当具体产品类
    /// </summary>
    class LineChart : Chart
    {
        public LineChart()
        {
            Console.WriteLine("创建折线图!");
        }
        public void Display()
        {
            Console.WriteLine("显示折线图!");
        }
    }
}

PieChart.cs

using System;

namespace SimpleChartFactory
{
    /// <summary>
    /// 饼状图
    /// 充当具体产品类
    /// </summary>
    class PieChart : Chart
    {
        public PieChart()
        {
            Console.WriteLine("创建饼状图!");
        }
        public void Display()
        {
            Console.WriteLine("显示饼状图!");
        }
    }
}

ConfigurationManager.AppSettings的使用-2021-02-14
ConfigurationManager.AppSettings的使用-2021-02-14
ConfigurationManager.AppSettings的使用-2021-02-14

上一篇:Arction高性能图表控件LightningChart光标移动的标记无法正常工作问题解答


下一篇:urlscan使用详解