В основном это вызвано dll ссылки не добавляются в систему контроля версий (репозиторий TFVC) .
Во-первых, пожалуйста, убедитесь, что вы добавили dll справочника в проект веб-сайта. Таким образом, файл проекта будет содержать ссылку, как показано ниже (ClassLibrary1.dll
как ссылка в примере ниже):
<Reference Include="ClassLibrary1">
<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\Debug\netstandard2.0\ClassLibrary1.dll</HintPath>
</Reference>
Затем вы можете использовать любой из приведенных ниже вариантов, чтобы заставить указанные dll работать.
Вариант 1: добавить указанные библиотеки в систему контроля версий
Если вы добавили файл .tfignore
в репозиторий TFVC, он будет игнорировать файлы и папки в **\bin,
, поэтому ссылка не будет возвращаться в репозиторий TFVC по умолчанию. Вы можете воспользоваться нижеприведенными опциями, чтобы проверить ссылочные библиотеки в репозитории TFVC:
Исключить справочные библиотеки в .tfignore
Исключить dll, на который вы хотите сослаться в .tfignore
. Формат:
!**\referencename.dll
Например, !**\ClassLibrary1.dll
.
Добавить эталонные библиотеки в систему контроля версий
В VS -> Source Control Explorer -> Добавить элементы в папку -> выбранные библиотеки.
Проверка и двойная проверка dll добавлены в репозиторий TFVC
В окне ожидающих изменений VS будут показаны dll и файл .tfignore
в виде внесенных изменений, отметка изменений.
И дважды проверьте, что dll добавлены в репозиторий TFVC на веб-странице VSTS.
Вариант 2: создать эталонный проект перед созданием проекта веб-сайта
Если вы не хотите добавлять библиотеки dll в систему управления версиями, вы также можете сначала создать эталонное решение , чтобы эталонные библиотеки генерировались до сборки проекта веб-сайта. Подробности, как показано ниже:
Изменить определение сборки -> добавить задачу построения VS (указать эталонное решение) перед сборкой проекта веб-сайта -> Сохранить и поставить в очередь сборку.
Примечание: для варианта 2, конфигурация сборки, указанная вами в относительном пути, должна соответствовать конфигурации сборки в определении сборки VSTS.
Например, я указал Debug
в относительном пути ..\..\ClassLibrary1\ClassLibrary1\bin\Debug\netstandard2.0\ClassLibrary1.dll
. Таким образом, в моем определении сборки VSTS, задаче сборки VS для построения эталонного проекта, конфигурация сборки должна быть Debug
.
Теперь, независимо от того, какую опцию вы используете, VSTS build не покажет сообщение об ошибке The type or namespace name '(namespacehere)' could not be found
.