C# 从NETCORE11动态加载NET46 dll
我有一个C# 从NETCORE11动态加载NET46 dll,c#,.net,dll,asp.net-core,multiplatform,C#,.net,Dll,Asp.net Core,Multiplatform,我有一个netcore1.1库项目,使用EFCore和更多基于NETCore的库,它们使用插件 一些插件没有移植到net core中,它们的目标是net40和net46。 他们并不是针对我的运行、加载和组装框架 现在它是合乎逻辑的,我将遇到问题加载程序集从不同的框架到我的NetCore1.1应用程序 将net4x添加到框架列表需要重构.netCore和.net的代码,无论哪种方式,一个目标都不能同时使用这两个框架的插件 我如何(从网络核心应用程序)在自己的环境中运行适合它的插件?在维护界面时?
netcore1.1
库项目,使用EFCore
和更多基于NETCore的库,它们使用插件
一些插件没有移植到net core中,它们的目标是net40
和net46
。他们并不是针对我的运行、加载和组装框架 现在它是合乎逻辑的,我将遇到问题加载程序集从不同的框架到我的NetCore1.1应用程序 将
net4x
添加到框架列表需要重构.netCore
和.net
的代码,无论哪种方式,一个目标都不能同时使用这两个框架的插件
我如何(从网络核心应用程序)在自己的环境中运行适合它的插件?在维护界面时?注意:如果有帮助的话,我和插件的接口是非常简单的基本类型 编辑: 我尝试使用
AssemblyLoader.Resolve
,并在尝试引用{System,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089}
,(令人惊讶的是,它不是从GAC加载的),我是从
C:\ProgramFiles(x86)\Reference Assembly\Microsoft\Framework\.NETFramework\v4.6
加载的,
给我一个例外:
Could not load file or assembly 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL'.
Reference assemblies should not be loaded for execution.
They can only be loaded in the Reflection-only loader context.
(Exception from HRESULT: 0x80131058)
谢谢。您的框架列表中是否有
net46
和#ifdef net46
框架特定的代码?@vcsjones需要维护两组代码,一组使用EF6
,另一组使用EF-Core
。我宁愿只有NET46
,而把NetCore放在一边。