В моей только что созданной среде BizTalk 2020 Dev, когда я добавляю проект решения BizTalk Server (.btaproj) в решение, в диалоговом окне, где вы задаете имя проекта, отображается селектор платформы. NET и по умолчанию используется версия 4.7.2, как и ожидалось.
Однако, когда проект добавлен в решение, я вижу в свойствах проекта, на который он нацелен. NET 4.6.1. Кто-нибудь видел это? это ошибка или что-то не так с установкой?
Естественно, я изменяю его на версию 4.7.2 как обычный проект BizTalk, и все прекрасно компилируется в Visual Studio.
Но на нашем сервере сборки тот же проект провалился. Мы используем Azure Devops для CICD. На сервере сборки у нас установлена та же версия VS (2019 Enterprise) и установлено BizTalk Server Extention (v3.12.1.0), а также средства msbuild из установки сервера BizTalk.
В журналах я сначала получаю предупреждение:
C: \ Program Files (x86) \ Microsoft Visual Studio \ 2019 \ Enterprise \ MSBuild \ Current \ Bin \ Microsoft .Common.CurrentVersion.targets (2106,5): предупреждение MSB3274: не удалось разрешить первичную ссылку «A.dll», поскольку она построена на основе платформы .NETFramework, Version = v4.7.2. Это более высокая версия, чем целевая на данный момент платформа .NETFramework, Version = v4.6.1. [B.btaproj] *
И далее в журнале btaproj не найдет сборки для включения в пакет .zip.
Приведенное выше сообщение подразумевает, что у меня другая цель версии, но я не знаю.
Теперь странно то, что я могу войти на сервер сборки, клонировать тот же проект и просто скомпилировать его с VS.
Единственный способ заставить сборочный сервер успешно скомпилировать проект (или любой другой проект BizTalk с .btaproj в этом отношении), изменить. окружение.
Я проверил файлы проекта и файлы, отмеченные как Git, и все выглядит нормально с исходными файлами. Флаг очистки я установил для очистки исходников и выходного каталога. Я могу скомпилировать обычный проект BizTalk и приложение. NET с 4.7.2 на сервере сборки, это нормально, только когда я использую проект .btaproj, где он начинает плохо себя вести.
Может кто-нибудь указать, с чего начать искать? .btaproj кажется поначалу подозрительным, но он также может быть изолирован от msbuild на сервере сборки и отличается от компиляции в Visual Studio.