繁体   English   中英

.NET 2.0 组件可以在 .NET 4.0 下运行吗?

[英]Can .NET 2.0 assemblies run under .NET 4.0?

我开发了一个 .NET 解决方案,它由几个程序集组成,其中大部分是针对 .NET 框架的 2.0 版的小型辅助程序集。 其余程序集是 MVC 3 Web 应用程序,它们必须针对 .NET 框架的 4.0 版。 除了 .NET 和 MVC 框架之外,我的解决方案没有其他外部依赖项。

我的问题如下:当我向客户部署此解决方案时,我是否必须同时部署 .NET 框架的两个版本,还是只部署 4.0 版本? .NET 2.0 组件可以在 .NET 4.0 下运行吗?

是的,.NET 2.0 程序集上的程序集中嵌入的依赖项会自动转换为它们的 4.0 版本。 但它使用从未测试过的那些程序集的版本运行。 它们高度兼容,但包含几个错误修复,您可能在不知不觉中依赖这些错误。 没有人能给你100%的保证。

去尝试一下。

您只需要最新版本。 它是向下兼容的。

答案是肯定的,为 .NET 2.0 开发的程序集将在 .NET 4.0 下正常运行

是和否(至少对于.Net 4.5)。 虽然它向后兼容,但默认是关联的.Net 版本上运行代码,如下所述:

.NET 框架 4.5 及其单点版本与使用早期版本的 .NET 框架构建的应用程序向后兼容。 换言之,使用先前版本构建的应用程序和组件无需修改即可在 .NET 框架 4.5 上运行。 但是,默认情况下,应用程序在为其开发的公共语言运行时版本上运行,因此您可能必须提供配置文件以使您的应用程序能够在 .NET 框架 4.5 上运行。 有关详细信息,请参阅本文前面的应用程序版本兼容性部分。

添加MyLovely.exe.config文件后一切正常:

<configuration>
  <startup>
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>

暂无
暂无

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

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