• 【译】使用 Visual Studio 调试外部源代码


      您是否曾经需要调试并进入依赖于 NuGet 或 .NET 库的代码,而这些库并没有构建为您的解决方案的一部分? 现在,调试它们并不像调试作为解决方案一部分的项目那么容易。从 Visual Studio 2022 预览3开始,我们在解决方案资源管理器中添加了一个新的“External Sources,外部源代码”节点,这将使调试外部源文件变得更加容易。这个节点在调试时出现,它将显示托管模块的源代码,其中加载的符号包含 Source Link 或 Source Server 信息。您可以轻松地浏览这些源文件,并在需要时通过放置断点进行调试。

      Visual Studio 2022 团队正在努力实现个人和团队生产力的承诺。调试外部源代码是诊断工具中的一项功能,这只是我们正在研究的令人兴奋的特性之一。 

    解决方案资源管理器中的外部源代码

      该特性向 Solution Explorer 中添加了一个新的顶级节点,当您处于调试会话时,该节点就会出现,任何加载的带有 Source Server 信息的符号文件(.pdb)都将出现在该节点下。

      您可以通过展开树项来浏览文件。然后,双击一个项目从 Source Server 下载文件,并在编辑器中打开它。如果将模块设置为自动加载符号,则节点将在整个调试会话中与模块源代码保持一致。

      如果你正在使用具有多个外部库的应用程序,这些库的组件已经发布到Source Server,例如 Newtonsoft.Json、CsvHelper、xUnit.net 等。这个特性将让你更容易地浏览这些源代码,并在需要时调试它们。 

    设置要求

      可以通过调试设置下的选项来管理符号加载和源代码下载。  

      按照下面的设置检查表,确保模块可以出现在解决方案资源管理器的“外部源代码”节点中。

      1. Tools -> Options -> Debugging 的选项

        Disable Just My Code:这将允许调试器尝试定位解决方案之外的代码符号。

      2. Tools -> Options > Debugging -> Symbols 的选项

        Enable Microsoft Symbol Server:这允许调试器尝试定位 Microsoft Symbol Server 上的符号

        Enable NuGet.org Symbol Server:这允许调试器尝试在 NuGet.org Symbol Server 上定位符号  

        Enable Load All Modules:这允许调试器加载所有模块的符号。(注意,这些选项将加载所有可用的符号,你可以通过选择“ Load only specified modules,只加载指定的模块”和指定包含的模块来限制符号加载。)   

      3. 您可能还需要检查 Debug -> Windows -> Modules,以查看当前哪些模块加载到内存中,并在需要时手动加载任何模块。 

      4. 一旦双击“外部源代码”中的项目,可能会提示您从服务器下载源代码; 单击“接受”,您就可以在编辑器中查看该项目的源代码。

    让我们知道你的想法!  

      这是为 Visual Studio 创建一流的外部源代码调试体验的第一步。我们很快也会为本地代码带来这种改变。我们非常感谢您花时间尝试我们的最新功能,我们希望您能提供反馈,感谢!

    原文链接

      https://devblogs.microsoft.com/visualstudio/debugging-external-sources-with-visual-studio/

     

     

    作者:MeteorSeed

    感谢您阅读本文,如果您觉得有所收获,麻烦点一下右边的“推荐”,您的支持是对我最大的鼓励...

    转载请注明出处。

  • 相关阅读:
    MySQL存储过程
    [转载]JDBC应该始终以PreparedStatement代替Statement
    Restlet入门例子 RESTful web framwork for java
    Cglib的使用方法(3)Mixin
    HDOJ_1220
    精华:OracleHelper类
    web.config详解
    ADO.NET结构
    字典树
    WCF、Net remoting、Web service概念及区别
  • 原文地址:https://www.cnblogs.com/MeteorSeed/p/15467277.html
Copyright © 2020-2023  润新知