Использование Roslyn Compiler с MSBuild - PullRequest
0 голосов
/ 14 февраля 2020

Я пытаюсь заменить свой TFS-сервер на Windows Контейнер , который будет обрабатывать все сборки с использованием msbuild. Проект, который я пытаюсь скомпилировать, - это C#. Net Framework WebSite, в котором есть только файл решения и файл проекта. В файле web.config есть разделы <system.codedom>, необходимые для нацеливания на компилятор Roslyn, чтобы использовать преимущества синтаксиса C # 6, однако, поскольку я не использую Visual Studio для компиляции приложения, необходимые файлы в папке bin / roslyn не восстанавливаются при выполнении команды nuget restore. Без восстановления этих файлов я получаю сообщение об ошибке

ASPCONFIG: тип поставщика CodeDom "Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, версия = 1.0.7.0, Культура = нейтральная, PublicKeyToken = 31bf3856ad364e35 "не найдена синтаксис, поэтому я удалил раздел <system.codedom> и попытался снова скомпилировать, только чтобы получить ошибки компиляции для $ для синтаксиса интерполяции.

Я прочитал несколько постов в блоге, пример 1 пример 2 , где люди добились успеха, просто установив пакет компилятора из nuget, однако я считаю, что в моем решении нет файла проекта, подсказок и целей, которые обычно помогают восстановить файлы refre sh в корзине Папка / roslyn пропускается.

Как я могу заставить msbuild использовать правильный компилятор и сделать необходимые библиотеки доступными без создания файла проекта?

...