【问题标题】:Visual Studio - Is there any way to search a subset of code that can be executed?Visual Studio - 有没有办法搜索可以执行的代码子集?
【发布时间】:2017-11-24 06:01:52
【问题描述】:

不确定这是否可能,但考虑到我们可以轻松导航到方法调用的实现(或至少选择可能的实现),甚至可以语法高亮代码覆盖率 - 有什么方法可以执行“搜索”或者对可以在给定突出显示部分中运行的所有代码有一个概述?

I.E 如果我突出显示代码

CallThirdParty(); // this function calls five other functions from classes X Y and Z
WriteToDatabase(); // no child function calls
PerformReconciliation(); // this function calls fourteen other functions from class A

我可以搜索 X Y Z 和 A 类中的代码吗?或者至少可以查看所有可以/可以为该 sn-p 运行的代码?

如果它没有多大意义,请原谅我,但我认为这绝对很棒,尤其是当你进入一个你不熟悉的项目时!

出于问题目的,对于 Visual Studio,但我对任何实现此目的的 IDE/插件感兴趣。

【问题讨论】:

  • 你的意思是call hierarchy? (如果您所在的方法与该部分相比非常大,您可以暂时将该部分提取到它自己的方法中,或者(来自 C# 7)一个本地函数。)

标签: visual-studio visual-studio-2015 visual-studio-extensions


【解决方案1】:

Code Map 可能会满足您的需求。正如文章所说,它可以帮助你

  • 了解 .NET 应用程序的整体架构。
  • 通过逐步深入了解细节来分析该架构中出现的依赖关系。
  • 通过从特定代码元素构建依赖关系图,了解并分析提议的更改对代码的影响。

Call Hierarchy 也可能有帮助。正如文章所说的

调用层次结构使您能够通过显示对选定方法、属性或构造函数的所有调用来浏览代码。这使您能够更好地了解代码的流动方式并评估代码更改的效果。您可以检查多个级别的代码以查看复杂的方法调用链和代码的其他入口点,从而使您能够探索所有可能的执行路径。

此外,您始终可以调试并单步执行代码以查看它在不同情况下的作用,然后查看调用堆栈等以跟踪您的调用和变量。

【讨论】:

    猜你喜欢
    • 2010-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-19
    • 2011-04-16
    • 1970-01-01
    • 2017-06-06
    相关资源
    最近更新 更多