1

我有一些仅适用于 Visual Studio 2012 的 C# 代码,但我也在同一代码库上使用 Visual Studio 2010。是否有可以用来隔离代码的预处理器指令或条件?

4

1 回答 1

3

据我所知,没有内置的预处理器指令,但是有一个 MSBuild 变量。

打开项目文件(在解决方案资源管理器中将其卸载,然后单击编辑)并在主要的属性声明集之后添加以下内容。

<PropertyGroup Condition="'$(VisualStudioVersion)' == '10.0'">
  <DefineConstants>$(DefineConstants);VS_10;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(VisualStudioVersion)' == '11.0'">
  <DefineConstants>$(DefineConstants);VS_11;</DefineConstants>
</PropertyGroup>

然后,您可以使用VS_10(VS 2010) 或VS_11(VS 2012) preproc 指令。

于 2013-08-24T08:40:29.757 回答