![](/img/trans.png)
[英]How to deal with .Net framework versions V4.0 vs V3.5 in Windows 8
[英]NET Framework migration from v3.5 to v4.0
我有一个visual studio 2008解决方案和.NET Framework v3.5。 最近我已经转换为Visual Studio 2010和.NET Framework v4.0。
要更改为.NET Framework v4.0,我已完成项目属性和构建选项卡,方法是将目标更改为每个项目的目标Framework v4.0。 但是,如果我打开配置项目文件csproj,我可以看到有一个与v3.5相关的标签:
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase">
<RequiredTargetFramework>3.0</RequiredTargetFramework>
</Reference>
</ItemGroup>
我想知道为什么一些包含的引用是指v3.0,v3.5框架,如果项目目标是.NET Framework v4.0。 尽管项目针对的是.NET framework v4.0,但其他项目也会出现这种情况。
System.Core的目标是3.5 WindowsBase的目标是3.0
这些引用本身需要3.5(对于System.Core)和3.0(对于WindowsBase)。 实际上,这不是100%正确(参见Ramhound对此答案的评论)。
到目前为止,任何高于2.0的.NET框架本质上都是位于2.0之上的DLL。 例如,在几年和一个工作之前,我需要.NET 2.0中的LINQ和Hashset <T>,因为我的一半用户被卡在Win2K上,Win2K不支持.NET 2.0以上的任何东西。 我结束了从Mono重新编译System.Core并将其定位到2.0,并且能够使用更新的功能。
我不认为这是你需要担心的事情。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.