最初,为了与.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作为一个更好看的UI,但是,疯狂地知道,WPF中的WPF浏览器不能在WPF应用程序中呈现。所以我用了一个winform浏览器。
发布于 2013-04-18 12:19:06
如果您正在制作一个普通的WPF桌面应用程序,只需将目标框架移动到.Net 4并完成它。Windows 7和Windows 8完全支持.Net 4。如果您不想让用户下载安装.Net 4,请将它包含在安装发行版中。
发布于 2013-04-18 09:03:13
确保您没有使用不包括在您目标的最低版本中的类型!
.NET 2、3和3.5都共享相同的CLR,这将对代码和预期结果产生相同的影响。3.0和3.5也有不同的类型,所以要注意这一点。
CLR4.0有不同的CLR,您的代码可能不会以与CLR2.0相同的方式执行100%的操作。
但是,为什么不使用可再发行的4.0框架呢?它适用于XP sp3、Vista sp1、7和8. Distributing .NET 4.0 redistributable with application
https://stackoverflow.com/questions/16078233
复制相似问题