【问题标题】:Getting dependencies between assemblies programatically by NDepend APIs通过 NDepend API 以编程方式获取程序集之间的依赖关系
【发布时间】:2012-11-10 20:29:13
【问题描述】:

我想创建一个分析工具来提取依赖矩阵,例如 Visual NDepend 中的矩阵。

如何列出解决方案中两个程序集之间存在的依赖关系?

【问题讨论】:

    标签: c# .net ndepend


    【解决方案1】:

    首先阅读NDepend.API Getting Started page。然后,您可以通过查看通过右键单击非空依赖矩阵单元格生成的 CQLinq 查询来练习 > 生成与这些 X 代码元素匹配的查询 ...例如,如果矩阵选项 单元格的权重设置为直接:#方法,你会得到:

    ... 这会生成以下 CQLinq 查询。然后,您可以在使用 NDepend.API 的程序中将此查询作为经典 LINQ 查询重用。这些生成的查询应该是开发更复杂的依赖查询和程序的良好起点。

    from m in Assemblies.WithNameIn( "mscorlib").ChildMethods()
    where m.IsUsedBy ("pnunit-launcher")
    select new { m, m.NbLinesOfCode }
    //--------------------------------------------------------------------
    // 52 methods of the assembly
    // mscorlib
    // v4.0.0.0
    // 
    // are used by
    // 24 methods of the assembly
    // pnunit-launcher
    // v1.0.4661.29691
    // 
    

    顺便说一句,这里是查询编辑视图:

    【讨论】:

    • 谢谢,这对我来说太完美了!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多