PropertyGrid中的属性备份

public class BaseSetting
    {
   
        private Dictionary<string, int> intValues = null;
        private Dictionary<string, string> strValues = null;
        private Dictionary<string, bool> boolValues = null;
        private Dictionary<string, double> doubleValues = null;
        private DataSet ds = null;
        private const string intTableName = "IntTable";
        private const string stringTableName = "StringTable";
        private const string boolTableName = "BoolTable";
        private const string doubleTableName = "DoubleTable";
        private const string firstFieldName = "ParaName";
        private const string secondFieldName = "ParaValue";

        public string Name
        {
   
            get; set;
        }

        private string SettingFileName
        {
   
            get
            {
   
                string fileName = this.GetType().Assembly.Location;
                string filePath = Path.GetDirectoryName(fileName);

                if (string.Compare(Name, "Settings") == 0)
                {
   
                    return Path.ChangeExtension(fileName, ".xml");
                }
                else
                {
   
                    return Path.Combine(filePath, string.Format("{0}.xml", Name));
                }
            }
        }
        
        public BaseSetting(string name)
        {
   
            intValues = new Dictionary<string, int>();
            strValues = new Dictionary<string, string>();
            boolValues = new Dictionary<string, bool>();
            doubleValues = new Dictionary<string, double>();
            Name = name;
            SetupDataSet();
            this.load();
            
        }

        public virtual bool Save()
        {
   
            return Save(SettingFileName);
        }
        public virtual bool Save(string filePath)
        {
   
            if (!PropertiesToSettings(this, this)) return false;

            UpdataToDatabase(true);

            try
            {
   
                MemoryStream ms = new MemoryStream();
                ds.WriteXml(ms, XmlWriteMode.WriteSchema);

                FileStream dst = File.Create(GetZipFileName(filePath));
                ms.Position = 0;
                CompressStream(ms, dst);

             
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值