gpt4 book ai didi

c# - 为 .net 项目/解决方案创建类之间的依赖关系图

转载 作者:行者123 更新时间:2023-11-30 15:59:21 27 4
gpt4 key购买 nike

是否有一种编程方式或工具允许遍历项目/程序集中的所有类并找出其他依赖类?Resharper 具有类似的功能,但我无法找到以某种易于分析的格式导出结果的方法。

我的最终目标是在类之间(每个类)创建依赖关系图,而不是由项目/命名空间/等聚合

我的最终目标是获得这样的列表 <Class Name>: <Dependency1>, <Dependency N>

 - Class1: Class2, Class6, Class9   
- Class2: Class1, Class4
- Class3:
- Class4: Class2, Class5

等等

更新:我使用的是 Visual Studio 2015 Premium。

最佳答案

您还可以尝试与 VS2015(所有 SKU,包括 Premium)以及 VS 2019、2017、2013、2012、2010 所有 SKU(旧的 Express SKU 除外)集成的工具 NDepend。

借助 NDepend,您可以在 Visual Studio 中进行编辑 C# linq queries that are compiled/executed live .例如,下面的代码查询显示了所有类的依赖关系:

from t in Application.Types
select new { t, t.TypesUsed, t.TypesUsingMe }

NDepend Code Query for Dependency

代码查询结果可以导出到图,这样可以生成多种依赖图:Call Graph , Class Inheritance Graph , Coupling Graph ...

NDepend Generating Graoh fromCode Query

I wasn't able to find the way to export the results in some easy-to-analyze format.

除了 Visual Studio 中的实时代码查询之外,NDepend 代码查询还可以通过 API 获得。您可以利用它来创建 C# 程序并以任何格式导出任何数据。


新的 NDepend 版本 2020.1 现在让您可以在单击中为类或方法生成调用图:

NDepend Dependency Graph to produce a Call Graph


免责声明:我为 NDepend 工作

关于c# - 为 .net 项目/解决方案创建类之间的依赖关系图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41729011/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com