是否可以在 CQL 中编写请求?
我想写一些类似的东西:
从程序集“myassemblie”中选择类型在哪里使用从程序集“myotherassemblie”中选择的方法在哪里是静态的
谢谢,万斯
NDepend 团队很自豪终于为这个问题提供了一个优雅的答案 :) 感谢新的 NDepend v4代码查询 LINQ (CQLinq) 功能,您所要求的可以这样写:
let staticMethods = Application.Assemblies.WithName("nunit.core")
.ChildMethods().Where(m => m.IsStatic)
from t in Application.Assemblies.WithName("nunit.util")
.ChildTypes().UsingAny(staticMethods )
let staticMethodsUsed = staticMethods.UsedBy(t)
select new { t, staticMethodsUsed }
编写这样的查询还有很多其他方法,但这种方式肯定是最简洁和优化的一种(右上角的面板告诉它在 4ms 内执行):