Azure DevOps NuGet Feed потребитель шаг в исходный код - PullRequest
0 голосов
/ 19 марта 2019

Я работаю над конвейером Azure DevOps, где я публикую канал NuGet. В ленте есть файлы abc.dll и abc.pdb. Потребитель моего канала может получить abc.dll и abc.pdb в свою папку bin. Они также могут вызывать методы в abc.dll.

Мой вопрос: как включить исходный код в файлы PDB . Я хочу, чтобы потребитель моего канала входил в код во время отладки. В настоящее время, когда они делают это, они получают сообщение о том, что файл исходного кода не найден.

Я знаю, что это угроза безопасности, чтобы другие знали ваш код, но мы просто хотим попробовать и посмотреть, как он работает. Я не хочу, чтобы потребитель что-либо делал. Просто получите мой канал, вызовите методы и войдите в код.

UPDATE

Мне удалось решить эту проблему следующим образом. Я добавил файлы исходного кода в свой пакет, и потребитель смог получить их на свой локальный компьютер и смог войти в код.

Можно ли размещать как обычные, так и символьные пакеты в локальной ленте NuGet на сетевом ресурсе?

Но я обеспокоен тем, что у меня много файлов с исходным кодом, и это приведет к увеличению размера моего канала, а также я не хочу, чтобы файлы с исходным кодом загружались на локальный компьютер потребителя.

Мне удалось опубликовать символы с помощью задачи Index Sources & Publish Symbols в конвейере Azure DevOps, но я получаю сообщение о том, что мой файл исходного кода не найден на стороне потребителя, когда они пытаются выполнить отладку и войти в код. Я пробовал ниже, но не работает.

https://docs.microsoft.com/en-us/azure/devops/artifacts/symbols/debug-with-symbols-visual-studio?view=azure-devops

Как мы действительно отлаживаем код, который был результатом задачи Index Sources & Publish Symbols?

РЕШЕНИЕ

Я могу решить проблему, выполнив точные шаги по ссылкам ниже

https://marcduerst.com/2018/01/11/how-to-build-and-publish-nuget-packages-with-source-symbols-to-vsts/

https://docs.microsoft.com/en-us/azure/devops/artifacts/symbols/debug-with-symbols-visual-studio?view=azure-devops

1 Ответ

1 голос
/ 20 марта 2019

Шаг Azure DevOps NuGet Feed в исходный код

Этот документ в основном представляет задачу Индекс Sources & Publish Symbols задача , немного о том, как отлаживатьпосылка.И эта задача используется для публикации символов на сервере символов в артефактах Azure, чтобы мы могли использовать индексированные символы для отладки нашего приложения.

Если мы хотим перейти к исходному коду, как вы сказали, нам нужно включить исходный код.Но мы не могли включить исходный код в файлы PDB , потому что это всего лишь сервер символов в артефактах Azure, мы не могли включить исходный код.Даже если бы мы могли включить исходный код в файлы PDB, мы все равно не смогли бы войти в исходный код, потому что Visual Studio / MSBuild не мог знать, какой исходный код следует использовать.

Серверы Symbol позволяют отладчикам автоматически извлекать правильные файлы символов , но не исходный код, не зная имен продуктов, номеров сборок или имен пакетов.

Итак, чтобы решить эту проблему, мы должны включить исходный код в пакет nuget вместо файлов PDB.Тогда мы могли бы указать исходный код в Visual Studio.

Проверьте подробные шаги из моего ответа в другой поток :

  • Поместите pdb и исходный кодфайл в пакете NuGet вместе с dll.
  • Добавьте исходный код в исходные файлы отладки для решения, которое ссылается на пакет.

Надеюсь, это поможет.

...