Как включить сборки C# 7 В Team Foundation Server 2015?



У нас есть Team Foundation Server (TFS) 2015, установленный локально. Мы хотели бы использовать Visual Studio 2017, чтобы воспользоваться преимуществами последних возможностей языка C#. Мы не готовы перейти на TFS 2017. Какие шаги необходимо предпринять, чтобы позволить последним функциям языка C# быть реализованными в TFS 2015?

572   2  

2 ответов:

Я не следовал этим шагам точно, но, основываясь на том, что я узнал, я думаю, что они бы сработали:

  1. Установить в Visual студии 2017 инструменты для сборки в XAML для построения конфигурации сервера
  2. Добавьте эти строки в TFSBuildServiceHost.exe.конфигурационный файл:
  <configSections>
    <section name="msbuildToolsets" type="Microsoft.Build.Evaluation.ToolsetConfigurationSection, Microsoft.Build.Utilities.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" requirePermission="false" />
  </configSections>
  <msbuildToolsets>
    <toolset toolsVersion="15.0">
      <property name="MSBuildToolsPath" value="C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin" />
    </toolset>
    <toolset toolsVersion="latest">
      <property name="MSBuildToolsPath" value="C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin" />
    </toolset>
  </msbuildToolsets>

C:\Program Файлы\Microsoft Team Foundation Server 14.0\Tools\TFSBuildServiceHost.exe.config

(я никогда бы не понял этого без этого сообщение . Спасибо jonesy2488 !)

  1. перезапустите службу конфигурации сборки XAML.
  2. измените шаблон процесса сборки XAML, чтобы включить параметр ToolVersion= "15.0":
<mtba:RunMSBuild DisplayName="Run MSBuild" OutputLocation="[OutputLocation]" CleanBuild="[CleanBuild]" CommandLineArguments="[String.Format(&quot;/p:SkipInvalidConfigurations=true {0}&quot;, AdvancedBuildSettings.GetValue(Of String)(&quot;MSBuildArguments&quot;, String.Empty))]" ConfigurationsToBuild="[ConfigurationsToBuild]" ProjectsToBuild="[ProjectsToBuild]" ToolVersion="15.0" ToolPlatform="[AdvancedBuildSettings.GetValue(Of String)(&quot;MSBuildPlatform&quot;, &quot;Auto&quot;)]" RunCodeAnalysis="[AdvancedBuildSettings.GetValue(Of String)(&quot;RunCodeAnalysis&quot;, &quot;AsConfigured&quot;)]" />

Просто установите последнюю версию пакета Microsoft.Net. Compilers nugget

Https://www.nuget.org/packages/Microsoft.Net.Compilers >> Пакет компиляторов .Net. Ссылка на этот пакет приведет к тому, что проект будет построен с использованием конкретной версии компиляторов C# и Visual Basic, содержащихся в пакете, в отличие от любой установленной версии системы.

Этот пакет можно использовать для компиляции кода, предназначенного для любой платформы, но его можно запустить только с помощью desktop .NET 4.6+ Полная Структура.

Comments

    Ничего не найдено.