.NET Remoting获取配置通道:

 接上文:

public static string ChannelManagerUrl
        {
            get
            {
                return App.GetSetting(Consts.SETTING_CHANNELMANAGER_URL);
            }
        }

 /// <summary>
        /// 获取指定的配置项,
        /// 取值顺序:
        /// 1.从配置文件的“AppSettings”节点取值。
        /// 2.从“注册表”的“SOFTWAREYYYY.SmsPlatform{ModuleName}”取值。
        /// 3.从“SOFTWAREYYYY.SmsPlatform”取值。
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        public static string GetSetting(string key)
        {
            var v = ConfigurationManager.AppSettings[key];//先取配置文件中的设置
            if (v != null)
                return v;

            var registryKey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(RegKeyName);//获取注册表
            if (registryKey == null)
                return null;

            object o = null;
            if (ModuleName != null)
            {
                var registrySubKey = registryKey.OpenSubKey(ModuleName); //取注册表中的子项设置
                if (registrySubKey != null)
                {
                    o = registrySubKey.GetValue(key);
                    registrySubKey.Close();
                }
            }
            if (o == null)
            {
                o = registryKey.GetValue(key);//从公用项中取值
                registryKey.Close();
            }
            if (o == null)
                return null;

            v = o as string;
            if (v != null)
                return v;
            return o + string.Empty;
        }

原文地址:https://www.cnblogs.com/rengke2002/p/5919382.html