2011-02-10 160 views
3

如果使用Framework 2.0构建.NET应用程序(Form/Web),它是否可以与仅具有框架4.0版本的计算机一起使用?.NET框架和版本兼容性

例如,我安装了Win Server 2003的全新副本,并使用.NET框架的v4.0更新系统(然后系统只有.NET的1.0,1.1和4.0),但是在安装SQL Server 2008 R2 Express该安装程序要求安装该框架的另一个v3.5 SP1。

回答

5

是的,您的2.0应用程序将在4.0框架的计算机上工作。向后兼容性在dot net 4.0中。

欲了解更多信息,看看这个MSDN article

MSDN说

然而,在实践中,这种 兼容性可以通过 在 .NET Framework中看似微不足道的变化而变化打破在 编程技术。例如,.NET框架4中的 性能改进可能会暴露在 早期版本上未发生的竞争 条件。类似地,使用一个 硬编码路径的.NET Framework 组件,执行与.NET框架的一个特定版本 相等 比较,并且通过使用反射 得到一个私有字段的值 不是向后兼容的 做法。另外,.NET Framework的每个版本 都包含错误 修补程序和与安全相关的更改 ,这些修改可能会影响某些应用程序和组件的兼容性。

但是,您需要在2.0应用程序配置文件中将supportedruntime定位到4.0。

+0

的.NET中唯一的破变化1.1和2.0之间进行。 – Jay 2011-02-10 02:00:56

4

您需要向app.config添加一个条目以选择在CLRv4上运行。

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

(如果不加它会只在V4 CLR跑!第2版的信息)