关于c#:如何使程序检测.Net版本,然后启用/禁用不同.Net版本支持的功能?

How to make the program detect .Net version and then enable/disable functions supported by different .Net version?

我在做一个老项目。它是很久以前由别人建造的,它是在.NET 2.0上建造的。现在,我需要向它添加一个新功能。然而,在编码方面,基于.NET 4.0的API/Class支持这个新功能。显然,它必须引用一些基于.NET 4的新DLL。所以,我制作了两个版本的程序。一个用于没有新功能的.NET 2.0,另一个用于.NET 4.0。

现在,项目经理问:是否可以将这两个版本转换为一个版本?因此,在代码中,它检测.NET版本,然后决定是否启用/禁用新功能。

如果用户安装了.NET 4.0,这应该不是问题。但是,有些用户仍在使用仅安装.NET 2.0的旧Windows服务器,由于他们的工作,安装.NET 4.0并重新启动系统将是一个问题。所以,基本上,这意味着程序必须能够在.NET 2.0上运行。

这有可能吗?如何做到这一点?有什么建议吗?

谢谢

******添加更多信息

我可以检测.NET版本。但我想知道怎么做:

如果在用户系统上是.NET 2.0,则仅运行.NET 2.0支持的代码;如果用户系统是.NET 4.0,则运行.NET 4.0支持的代码。

谢谢


在进行生成时,需要以.NET框架为目标。您需要创建两个单独的构建。