Esempio n. 1
0
        /// <summary>
        /// 将参数保存到指定的参数提供器中
        /// </summary>
        /// <param name="provider">参数存储器,如果为null将使用默认的参数存储器(即读取App.Config)</param>
        public virtual void SaveToSource(params ParameterProvider[] provider)
        {
            ParameterProvider prov = null;
            bool needDispose       = false;

            if (provider == null || provider.Length == 0)
            {
                prov        = new AppConfigProvider(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
                needDispose = true;
            }
            else
            {
                prov = provider[0];
            }

            Type Type = this.GetType();

            FieldInfo[] fields = Type.GetFields();
            foreach (FieldInfo item in fields)
            {
                prov.SetParameter(item.Name, item.GetValue(this));
            }

            prov.SaveToSource();
            if (needDispose)
            {
                prov.Dispose();
                prov = null;
            }
        }
Esempio n. 2
0
 /// <summary>
 /// 初始化参数
 /// </summary>
 /// <param name="provider">参数存储器,如果为null将使用默认的参数存储器(即读取App.Config)</param>
 public virtual void Initialize(string appconfigFile)
 {
     if (appconfigFile == null || appconfigFile == string.Empty)
     {
         appconfigFile = AppDomain.CurrentDomain.SetupInformation.ConfigurationFile;
     }
     if (File.Exists(appconfigFile))
     {
         var appConofigProvider = new AppConfigProvider(appconfigFile);
         Initialize(new AppConfigProvider[] { appConofigProvider });
         appConofigProvider.Dispose();
         appConofigProvider = null;
     }
 }