private void InitExtensibility() { var asmHelper = new AssemblyScanHelper(); // Добавляем собственную сборку asmHelper.AddAssembly(GetType().Assembly); // Добавляем Janus-Common asmHelper.AddAssembly(typeof(ExtensionInfoProviderBase).Assembly); // Добавляем сборки всех расширений var rootDir = EnvironmentHelper.GetJanusRootDir(); foreach (var asmPath in GetExtensionAssemblies(rootDir)) { asmHelper.AddAssembly(Assembly.LoadFrom(asmPath)); Trace.WriteLine("Use extension assembly '{0}'".FormatStr(asmPath)); } //Ресолвинг сборок расширений foreach (var dir in GetExtensionDirs(rootDir).Select(Path.GetFileName)) #pragma warning disable 612,618 { AppDomain.CurrentDomain.AppendPrivatePath(dir); } #pragma warning restore 612,618 var extensionManager = new ExtensionManager(_serviceManager); StrategyFactoryStrategy.RegisterAndScan( _serviceManager, extensionManager, asmHelper.GetTypes()); }
private void InitExtensibility() { var asmHelper = new AssemblyScanHelper(); // Добавляем собственную сборку asmHelper.AddAssembly(GetType().Assembly); // Добавляем Janus-Common asmHelper.AddAssembly(typeof(ExtensionInfoProviderBase).Assembly); // Добавляем сборки всех расширений var rootDir = EnvironmentHelper.GetJanusRootDir(); foreach (var asmPath in GetExtensionAssemblies(rootDir)) { asmHelper.AddAssembly(Assembly.LoadFrom(asmPath)); Trace.WriteLine($"Use extension assembly '{asmPath}'"); } //Ресолвинг сборок расширений foreach (var dir in GetExtensionDirs(rootDir).Select(Path.GetFileName)) #pragma warning disable 612,618 AppDomain.CurrentDomain.AppendPrivatePath(dir); #pragma warning restore 612,618 var extensionManager = new ExtensionManager(_serviceManager); StrategyFactoryStrategy.RegisterAndScan( _serviceManager, extensionManager, asmHelper.GetTypes()); }