Как отладить пакет nuget без функций WIP, используя VS 15.7 и выше
Я прочитал это: Как отладить мой пакет nuget, развернутый из TeamCity? но по какой-то причине мой проект нельзя отладить, не попросив указать местоположение исходного файла. Используя следующие команды, я смог правильно создать пакет (без необходимости добавлять его в.csproj) с символами
Рассматриваемый пакет находится в локальной ленте новостей.
Он будет запрашивать исходный файл во время отладки, несмотря на то, что nupkg, содержащий символы отладки + источники, не работает.
Команды, используемые для создания пакета:
dotnet clean "../$path"
dotnet pack "../$path" -o "$outputRoot" -v $verbosity -c $configuration -symbols --include-symbols --include-source /p:PackageVersion=$version
Invoke-Expression "& $nugetPath push $outputRoot\$path.$version.symbols.nupkg -source $localFeed"
Структура в локальном репо:
содержимое локальной ленты новостей
содержимое package.id/$version/
содержимое lib/net462
Мне кажется, что пакет находится в состоянии, в котором это должно работать, не так ли?
1 ответ
Он будет запрашивать исходный файл во время отладки, несмотря на то, что nupkg, содержащий символы отладки + источники, не работает.
Даже если символы отладки + источники включены в пакет Nuget символов, но сам NuGet не имеет возможности анализировать пакет Nuget символов при отладке этого пакета Nuget в Visual Studio. Поэтому Visual Studio все еще не может найти исходный файл во время отладки. Именно поэтому команда NuGet публикует пакет символов на сервере SymbolSource.
Посмотрите, Как отладить код в созданном мной пакете nuget для некоторых деталей.
Кроме того, поскольку в настоящее время опыт отладки и символов пакета NuGet не упрощен. Нелегко успешно отладить пакет nuget из Visual Studio. Не уверен, почему вы не хотите указывать местоположение исходного файла, если вы заинтересованы в нем, вы можете использовать облегченное решение для отладки пакета nuget:
Я использовал этот метод все время без каких-либо других проблем, надеюсь, это поможет вам.