Beispiel #1
0
        /// <summary>
        /// 获得插件对象
        /// </summary>
        /// <param name="pluginCol">当前插件集合</param>
        /// <param name="_type">插件类型</param>
        private static void getPluginObject(PluginCollection pluginCol, Type _type)
        {
            IPlugin plugin = null;

            try
            {
                //object aa = Activator.CreateInstance(_type);
                //创建一个插件对象实例
                plugin = Activator.CreateInstance(_type) as NBGIS.PluginEngine.IPlugin;
            }
            catch
            {
                if (AppLog.log.IsErrorEnabled)
                {
                    AppLog.log.Error(_type.FullName + "反射生成对象时发生异常");
                }
            }
            finally
            {
                if (plugin != null)
                {
                    //判断该插件是否已经存在插件集合中了,如果不是则加入该对象
                    if (!pluginCol.Contains(plugin))
                    {
                        pluginCol.Add(plugin);
                    }
                }
            }
        }
Beispiel #2
0
        private static void GetPluginObject(PluginCollection pluginCol, Type type)
        {
            IPlugin plugin = null;

            try
            {
                plugin = Activator.CreateInstance(type) as NBGIS.PluginEngine.IPlugin;
            }
            catch (Exception ex)
            {
                if (Applog.log.IsErrorEnabled)
                {
                    Applog.log.Error(type.FullName + "反射生成对象时发生异常" + "Message" + ex.Message);
                }
            }
            finally
            {
                if (plugin != null)
                {
                    if (!pluginCol.Contains(plugin))
                    {
                        pluginCol.Add(plugin);
                    }
                }
            }
        }