public async override Task <bool> Init() { try { await base.Init(); string pluginPath = System.IO.Path.Combine(AppContext.BaseDirectory, "Plugin"); PluginFactory.Load(pluginPath); bool isOk = PluginFactory.Init(this).Result; return(true); } catch (ReflectionTypeLoadException ex) { Console.WriteLine("初始化失败:\r\n{0}", ex.ToString()); //Logger.Error("load exception:\r\n{0}", ex.ToString()); if (ex.LoaderExceptions != null) { foreach (Exception e in ex.LoaderExceptions) { //Logger.Error("{0}", e.ToString()); } } return(false); } catch (Exception ex) { Console.WriteLine("初始化失败:\r\n{0}", ex.ToString()); //Logger.Error("init exception:\r\n{0}", ex.ToString()); return(false); } }
/// <summary> /// Init /// </summary> /// <returns></returns> public virtual Task <bool> Init() { string pluginPath = System.IO.Path.Combine(AppContext.BaseDirectory, "Plugin"); PluginFactory.Load(pluginPath); return(PluginFactory.Init(this)); }