//had remove to program.cs private static void AssemblyLoadContextResoving(IPluginsAssemblyLoadContexts pluginsLoadContexts) { //AssemblyLoadContext.Default.Resolving += (context, assembly) => //{ // assembly.Version = assembly.Version ?? new Version("0.0.0.0"); // Func<AssemblyLoadContext, bool> filter = p => p.Assemblies.Any(p => p.GetName().Name == assembly.Name // && p.GetName().Version == assembly.Version); // if (pluginsLoadContexts.All().Any(filter)) // { // var assemblyLoadContext = pluginsLoadContexts.All().First(filter); // Assembly ass = assemblyLoadContext.Assemblies.First(p => p.GetName().Name == assembly.Name // && p.GetName().Version == assembly.Version); // return ass; // } // if(AssemblyLoadContext.All.Any(filter)) // { // var assemblyLoadContext = AssemblyLoadContext.All.First(filter); // Assembly ass = assemblyLoadContext.Assemblies.First(p => p.GetName().Name == assembly.Name // && p.GetName().Version == assembly.Version); // return ass; // } // return null; //}; }
public PluginManagerService(IMapper mapper, IMvcModuleSetup mvcModuleSetup, IPluginsAssemblyLoadContexts puginsAssemblyLoadContexts, AutoMigration autoMigration) { Mapper = mapper; _mvcModuleSetup = mvcModuleSetup; _puginsAssemblyLoadContexts = puginsAssemblyLoadContexts; _autoMigration = autoMigration; }
public MvcModuleSetup(ApplicationPartManager partManager, IReferenceLoader referenceLoader, IPluginsAssemblyLoadContexts pluginsLoadContexts, DynamicChangeTokenProvider dynamicChangeTokenProvider, INotificationRegister notificationRegister, IOptions <PluginOptions> options, IWebHostEnvironment webHostEnvironment, IRazorViewEngine razorViewEngine, IViewCompilerProvider viewCompiler) { _partManager = partManager; _referenceLoader = referenceLoader; _pluginsLoadContexts = pluginsLoadContexts; _dynamicChangeTokenProvider = dynamicChangeTokenProvider; _notificationRegister = notificationRegister; _pluginOptions = options.Value; _env = webHostEnvironment; //_baseDirectory = AppContext.BaseDirectory; _baseDirectory = _env.ContentRootPath; _razorViewEngine = razorViewEngine; _viewCompiler = viewCompiler; }