.net - 带有发布配置的 SourceLink

标签 .net sourcelink

有没有办法启用Source Linking使用发布配置发布的 Nuget 包?

我们配置了一个本地 nuget 服务器,我们在其中存储使用 Release 配置构建的框架 dll。客户端应用程序引用这些 dll,我们希望从中调试框架。

我可以使用调试配置打包框架代码,但在 Release模式下,未加载 .pdb 文件,我可以在 VS 2017 的模块窗口中确认它。

这是我的源链接配置:

<Project>     
  <ItemGroup>
    <PackageReference Include="SourceLink.Embed.AllSourceFiles" Version="2.8.1" PrivateAssets="all" />
  </ItemGroup>
</Project>

编辑:我使用 Visual Studio 2017 版本 15.7.3。我的目标是 .NET Core 2.1。我确认 pdb 文件已嵌入到 nupkg 文件中,并且它们与 dll 位于同一目录中。 Debug模式只是工作。

最佳答案

是的,Release 配置可以很好地处理源链接或嵌入的源文件。 SourceLink.Embed.AllSourceFiles 在技术上不是源链接,但我的 SourceLink 工具支持它。您将源代码嵌入到 pdb 文件中。为什么没有加载 pdb 文件?它们在 .dll 文件旁边吗?你遇到了https://github.com/ctaggart/SourceLink/issues/313吗?从新项目系统定位 .NET Framework 时,是否未复制 .pdb 文件?如果是这样,就有一个简单的变通办法。如果您发布了 Visual Studio 的版本、正在使用的 .NET 版本以及您的目标是 .NET Framework 还是 Core,这将很有帮助。

关于.net - 带有发布配置的 SourceLink,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50739872/

相关文章:

c# - 从托管应用程序使用 native 注册免费 C++ COM 服务器

c# - HttpWebRequest 15 秒延迟性能问题

javascript - Winforms 相当于 javascript setTimeout

.net - 在 64 位进程中调用 DhcpGetClientInfo 失败

c# - 使用带有异步方法的 SourceLink V2 调试。是否可以?

VSTS 中的 SourceLink

.net - Protocol Buffer 是否适合长期序列化?

azure-devops - 使用 Azure Devops 和 Source Link 调试 NuGet 包

.net - 如何在 C++ 中正确使用链接器/SOURCELINK 选项