【问题标题】:CQL request compositionCQL 请求组合
【发布时间】:2011-07-10 12:34:09
【问题描述】:

是否可以在 CQL 中编写请求?

我想写这样的东西:

从组件“myassemblie”中选择类型 IsUsing SELECT METHODS FROM ASSEMBLIES "myotherassemblie" WHERE IsStatic

谢谢, 货车

【问题讨论】:

    标签: ndepend cql


    【解决方案1】:

    NDepend 团队很自豪终于为这个问题提供了一个优雅的答案 :) 感谢新的 NDepend v4 Code Query LINQ (CQLinq) feature,您所要求的可以这样写:

    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  }
    

    还有很多其他的方法可以编写这样的查询,但这种方法肯定是最简洁和优化的一种(右上角的面板告诉它在 4 毫秒内执行):

    【讨论】:

      猜你喜欢
      • 2015-09-14
      • 1970-01-01
      • 2019-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      相关资源
      最近更新 更多