为程序创建conf.ini文件时需要的类

在我们的项目中,无论是桌面软件还是web项目,经常会使用到ini文件,保存一些键值对的配置
 创建类 Settings


public class Settings
    {
        public readonly static Settings Instance = new Settings();
        private IniParser iniParser;

        private Settings()
        {
            //D:\\web\\BeiMaiProject\\beimai5.0\\Web\\BeiMai.WebApp\\BeiMai.WebApp\\bin
            string sPath = AppDomain.CurrentDomain.BaseDirectory;
#if DEBUG
            if (sPath.EndsWith("\\bin"))
                sPath = sPath.Replace("\\bin", "");
#endif
            iniParser = new IniParser(string.Concat(sPath, @"\conf\conf.ini")); 

            //app
            MySqlConn = iniParser.GetSetting("App", "MySqlConn");
            Emails = iniParser.GetSetting("App", "Emails");
            AllowIps = iniParser.GetSetting("App", "AllowIps");
            UpdateIpUrls = iniParser.GetSetting("App", "UpdateIpUrls");
            DefaultAllowIps = iniParser.GetSetting("App", "DefaultAllowIps");
            PcNumber = iniParser.GetSetting("App", "PcNumber");
            LastIpUpdate = iniParser.GetSetting("App", "LastIpUpdate");
            PopVersion = DateTime.Parse(iniParser.GetSetting("App", "PopVersion"));

            //httpserver
            Port = Utils.StrToInt(iniParser.GetSetting("HttpServer", "Port"),0) ;
            Domain = iniParser.GetSetting("HttpServer", "Domain");
            Paths = iniParser.GetSetting("HttpServer", "Paths");
            
            
        }

        public void Save()
        {
            //app
            iniParser.AddSetting("App", "MySqlConn", MySqlConn);
            iniParser.AddSetting("App", "Emails", Emails);
            iniParser.AddSetting("App", "AllowIps", AllowIps);
            iniParser.AddSetting("App", "UpdateIpUrls", UpdateIpUrls);
            iniParser.AddSetting("App", "DefaultAllowIps", DefaultAllowIps);
            iniParser.AddSetting("App", "PcNumber", PcNumber);
            iniParser.AddSetting("App", "LastIpUpdate", LastIpUpdate);
            iniParser.AddSetting("App", "PopVersion", PopVersion.ToString());

            //httpserver
            iniParser.AddSetting("HttpServer", "Port", Port.ToString());
            iniParser.AddSetting("HttpServer", "Domain", Domain);
            iniParser.AddSetting("HttpServer", "Paths", Paths);

            iniParser.SaveSettings();

        }

        
        //app
        public string MySqlConn { get; set; } 
        public string Emails { get; set; }
        public string AllowIps { get; set; }
        public string UpdateIpUrls { get; set; }
        public string DefaultAllowIps { get; set; }

        //httpserver
        public int Port { get; set; }
        public string Domain { get; set; }
        public string Paths { get; set; }
        public string PcNumber { get; set; }

        public string LastIpUpdate { get; set; }
        
        public DateTime PopVersion { get; set; }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值