Я работаю над созданием специального расширения политики проверки Visual Studio 2017. Мое текущее решение структурировано следующим образом:
Примечание. Я использую новый подход NuGet PackageReference, поэтому файл pack.config отсутствует.
Я считаю, что я правильно настроил свой VSIX-манифест, так как все работает отлично, когда я не ссылаюсь на Microsoft.Net.Http
(изначально я был жестко кодирован в значениях вместо того, чтобы извлекать значения). Я не уверен, почему пакет Microsoft.TeamFoundationServer.ExtendedClient
NuGet, который включен, не вызывает никаких проблем, тогда как пакет Microsoft.Net.Http
NuGet делает.
Я просмотрел папку отладки, чтобы увидеть, что компилируется, и я вижу, что каждая сборка необходима, но если я распакую VSIX (я переименовал ее в .zip и распаковал ее), включена только сборка проекта; Nuget, на которые ссылаются сборки, не упакованы в пакет VSIX.
Я наткнулся на несколько ресурсов, но ничего не работает:
- Пакет VSIX не включает зависимые зависимости проекта
- VSIX с шаблонами проектов и пакетами NuGet
- Как включить пакет Nuget в расширение Visual Studio (vsix)
- Расширение VSIX - Как я могу гарантировать, что ссылочная DLL или сборка включены в файл VSIX?
Кажется, что каждый из этих вопросов/ответов не затрагивает мою конкретную проблему.
Update:
Я считаю, что возможно, что инструмент, используемый для создания пакета VSIX, не поддерживает новую функцию PackageReference
NuGet. Если я использую более старую функцию package.config, все работает нормально. Я добавил UserVoice Ticket для поддержки новой функции NuGet.