.NET项目有多个目标平台? (Windows 8.1,Others)

时间:2013-10-30 04:02:39

标签: c# .net windows-8.1

我正在开发WPF C#.NET项目,我正在使用

来利用某些Windows 8.1特定功能
<TargetPlatformVersion>8.1</TargetPlatformVersion>

在我的.csproj中。理想情况下,我想继续为非Windows 8.1客户提供支持。

支持Windows 8.1特定功能的最佳方法是什么,同时仍然创建与旧版Windows(.NET 4.0)兼容的exe。

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用编译时常量和项目配置为同一项目创建不同的输出。
在您的代码中,您可以检查是否设置了编译时间常量并相应地(取消)激活代码块,例如:

#if DEBUG
    // Code when DEBUG constant is set
#else
    // Code when DEBUG constant is not set
#endif

但是,请记住,为项目分别构建会引入新的努力。如果您有机会在运行时检查应用程序运行的操作系统是否支持某些功能,则可以轻松完成。