兼容dotnet 3.5和dotnet 4.0

时间:2013-04-18 08:39:40

标签: c# .net wpf winforms windows-8

最初它设置为使用.Net3.5与win7兼容。 (实际上使用WPF)

然而,对于win8中支持 .Net4.0的用户, 用户需要下载并安装.Net3.5, 这会导致糟糕的用户体验。

我的问题出现了:

如何使软件与多个.Net版本兼容?

实际上我尝试使用.Net 2.0作为软件,它与win7和win8都很顺利。然而,当谈到.Net 3.5时,向后兼容性似乎很糟糕。但是我真的需要3.5或WPF中的一些功能。

如果有自动选择机制,我不介意是否需要构建多个二进制版本。

P.S。我在Make same app compatible for Net3.5 & 4.0@stackoverflow找到了类似的问题,但在阅读之后却没有任何帮助。

修改

我正在使用winform和WPF。我正在使用WPF来获得更好看的用户界面,但是,据我所知,WPF中的webbrowser无法在WPF应用程序中呈现。所以我使用winform webbrowser。

2 个答案:

答案 0 :(得分:1)

请确保您不使用未定位的最低版本的类型!

.NET 2,3和3.5都共享相同的CLR,这应该对您的代码和预期结果产生相同的影响。 3.0和3.5也有不同的类型,所以要小心。

.NET 4.0具有不同的CLR,您的代码可能不会像使用CLR 2.0一样100%执行。

但是,为什么不附带可再发行的4.0框架。它适用于XP sp3,Vista sp1,7和8. Distributing .NET 4.0 redistributable with application

答案 1 :(得分:1)

如果您正在制作一个普通的WPF桌面应用程序,只需将您的目标框架移动到.Net 4并完成它。 Windows 7和Windows 8完全支持.Net 4.如果您不希望用户下载安装.Net 4,请将其包含在您的设置分发中。