假设系统安装了 .NET 4.0 和 .NET 4.5。
是否可以从针对 .NET 4.0 编写的程序集加载和使用 .NET 4.5 程序集?
简而言之,我可以Assembly.Load
从 .NET 4.0 代码调用以加载 .NET 4.5 目标程序集吗?
假设系统安装了 .NET 4.0 和 .NET 4.5。
是否可以从针对 .NET 4.0 编写的程序集加载和使用 .NET 4.5 程序集?
简而言之,我可以Assembly.Load
从 .NET 4.0 代码调用以加载 .NET 4.5 目标程序集吗?
假设系统为 .NET 4.0 和 .NET 4.5:
如sehe链接的marcgravell博客中所述
4.5 是 GAC 中 4.0 之上的就地 Over-the-top 安装;安装 4.5 后,4.0 将与 4.5 程序集一起运行
然后从针对 4.0 的 .NET 代码(由 4.0 编译器编译)调用 Assembly.Load,实际上将使用 4.5 框架实现运行,所以我看不出它无法加载 4.5 程序集的任何原因。
margravell 指出,当您尝试在仅安装 4.0 的系统上运行 .NET 4.5 编译代码时会出现问题,因为 yield return/break 迭代器的实现会导致缺少方法引用。但这不应该影响你。