可以将 pdb 文件添加到 nuget 包中吗?
Can pdb files be added to a nuget package?
我们正在将包构建到本地 nuget 库,使用 azure 管道(YAML 构建文件)构建包并将它们添加到我们的库
可执行文件是从 csproj 中的 GeneratePackageOnBuild 指令打包的
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<DebugType>full</DebugType>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Version>5.0.4</Version>
是否也可以将 pdb 文件添加到包中,以便它们与我们使用该包的服务一起分发?
目的有两点:
- 获取堆栈跟踪中的行号
- 能够调试到库代码
您想要的是一个“符号包”,它将创建另一个带有 .snupkg
扩展名的文件,您也可以将该文件上传到您的注册表。
只需将其添加到您的 .csproj 文件中,即可在打包项目时自动创建一个。
<PropertyGroup>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
https://docs.microsoft.com/en-us/nuget/create-packages/symbol-packages-snupkg
您可能还对 SourceLink 感兴趣,以便在调试时获得最佳体验。
https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/sourcelink
我们正在将包构建到本地 nuget 库,使用 azure 管道(YAML 构建文件)构建包并将它们添加到我们的库
可执行文件是从 csproj 中的 GeneratePackageOnBuild 指令打包的
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<DebugType>full</DebugType>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Version>5.0.4</Version>
是否也可以将 pdb 文件添加到包中,以便它们与我们使用该包的服务一起分发?
目的有两点:
- 获取堆栈跟踪中的行号
- 能够调试到库代码
您想要的是一个“符号包”,它将创建另一个带有 .snupkg
扩展名的文件,您也可以将该文件上传到您的注册表。
只需将其添加到您的 .csproj 文件中,即可在打包项目时自动创建一个。
<PropertyGroup>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
https://docs.microsoft.com/en-us/nuget/create-packages/symbol-packages-snupkg
您可能还对 SourceLink 感兴趣,以便在调试时获得最佳体验。
https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/sourcelink