2013-08-24 5 views
1

У меня есть код C#, который работает только в Visual Studio 2012, но я также использую Visual Studio 2010 на той же кодовой базе. Существует ли препроцессорная директива или условное выражение, которое я могу использовать для выделения кода?Директива препроцессора C# или условная для дифференциации между Visual Studio 2012 и 2010?

ответ

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) директиву препроцессора.

 Смежные вопросы

  • Нет связанных вопросов^_^