繁体   English   中英

.net 4 运行 .net 2.0 程序集的应用程序

[英].net 4 Application running a .net 2.0 assembly

我正在开发一个 .net 4 应用程序,它需要在 .net 2.0 中使用第 3 方应用程序。 在 .net 4 中运行它会导致一些异常。

是否可以强制仅在 .net 2 中执行程序集?

有任何想法吗?

它被称为混合模式,您可以通过设置/更改 app.config 文件中的一些属性来实现,例如:

<startup useLegacyV2RuntimeActivationPolicy="true"> 
  <supportedRuntime version="v4.0"/> 
</startup>

请尝试将以下 XML 添加到您的配置文件中。

<configuration>
  <startup>
    <supportedRuntime version="v2.0.50727" />
  </startup>
</configuration>

从 .NET 4 开始,您完全不必担心兼容性问题! 版本 4 引入了一个称为“进程内并行执行”的新功能,它本质上允许您将多个版本的 CLR 加载到同一个进程中。 换句话说,由于您的主应用程序在 4.0 运行时上运行,您可以在加载 2.0 CLR 程序集时告诉它加载 2.0 运行时。 2.0 CLR 程序集将使用 2.0 运行时,而您的应用程序将继续使用 4.0 运行时。

您可以从以下链接中找到更多详细信息:

从 .NET 4.0 应用程序链接 .NET 2.0 托管程序集时,使用哪个框架?

https://msdn.microsoft.com/en-us/library/w4atty68(v=vs.110).aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM