- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 VSTS (Azure DevOps) 上拥有私有(private)存储库我尝试通过将以下内容添加到 .csproj 文件来启用 SourceLink:https://github.com/dotnet/sourcelink#azure-devops-visual-studio-team-services
这在调试过程中似乎没有任何影响。本地 NuGet 包中引发异常,我无法使用调用堆栈窗口导航到它,因为甚至没有为该项目加载 pdb。
我在 Visual Studio 中禁用了“仅启用我的代码”并启用了 SourceLink。
我还需要进行哪些其他更改才能启用 SourceLink?
最佳答案
大多数关于如何设置 SourceLink 的教程似乎都忽略了两个关键内容。
首先:
其次:
.snupkg
格式可以正常工作NuGet.Server
包)上没有符号服务器,.snupkg
不是支持,并且这(被广泛列为要做什么)不起作用(它包括 NuGet 包中的 .pdb 文件,但从我的测试来看,消费 VS 从不使用它们): <PropertyGroup>
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
</PropertyGroup>
<PropertyGroup>
<DebugType>Embedded</DebugType>
</PropertyGroup>
您绝对应该查看 Debug/Windows/Modules 下的 VS Modules 窗口(快捷键 CTRL+ALT+U)(仅在代码运行时可用),它显示了哪些模块已加载符号并帮助您找出哪个避风港'不,如果他们没有,为什么不呢。
编辑
事实证明:
<PropertyGroup>
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
</PropertyGroup>
正在工作。它会生成一个很好的 NuGet 文件,或者应该......但目前有 a bug in .NET SDK这导致它不会以这种方式加载存储在 NuGet 文件中的 .pdb 文件,尽管它应该这样做。
还有另一个修复。在消费项目中,包括:
<PackageReference Include="SourceLink.Copy.PdbFiles" Version="2.8.3" PrivateAssets="All" />
添加后,一切都应该按照演示再次运行。
或者,该包应用的修复是:
<Project>
<Target Name="_ResolveCopyLocalNuGetPackagePdbs" AfterTargets="ResolveReferences"
Condition="$(CopyLocalLockFileAssemblies) == true">
<ItemGroup>
<ReferenceCopyLocalPaths Include="@(ReferenceCopyLocalPaths->'%(RootDir)%(Directory)%(Filename).pdb')"
Condition="'%(ReferenceCopyLocalPaths.NuGetPackageId)' != '' and Exists('%(RootDir)%(Directory)%(Filename).pdb')" />
</ItemGroup>
</Target>
</Project>
和(来自 here):
A good place to put it is in Directory.Build.targets so that your project files are not cluttered and so that you can apply it to multiple projects in a solution. https://learn.microsoft.com/en-us/visualstudio/msbuild/customize-your-build
关于c# - 启用 SourceLink,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53446003/
有没有办法在 Visual Studio 中配置链接器,以便嵌入在 .pdb 文件中的文件名(和路径)保持其大小写? 我们有一个想要使用 NuGet 打包的 Visual Studio C++/Cli
在 VSTS (Azure DevOps) 上拥有私有(private)存储库我尝试通过将以下内容添加到 .csproj 文件来启用 SourceLink:https://github.com/dot
我们在 C# 项目中使用 SourceLink,它工作得很好。当我们尝试在 C++ 项目上使用它时,链接器中的/SOURCELINK 选项似乎被忽略,因为生成的 PDB 中没有相关元数据 我正在使用这
我们开始在一个项目中使用 SourceLink V2 来调试我们的内部 nuget 包。我们已正确设置它(尽我们所能),并且能够成功调试到正常的同步方法中。 不幸的是,我们的大部分代码都是异步编写的(
我是一名优秀的程序员,十分优秀!