首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在NDepend中定义CQLinq执行上下文?

如何在NDepend中定义CQLinq执行上下文?
EN

Stack Overflow用户
提问于 2013-10-05 21:00:20
回答 1查看 85关注 0票数 1

当我将NDepend CQLinq查询移植到C#时,我必须始终开始定义要查询的codeBase,所以这个CQLinq查询

代码语言:javascript
复制
from m in Methods
where m.ILCyclomaticComplexity > 10 
select new {m}

在NDepend中使用C# API,我必须移植到:

代码语言:javascript
复制
ICodeBase codeBase

from m in codeBase.Application.Methods
where m.ILCyclomaticComplexity > 10 
select m 

我看到有一个ICQLinqExecutionContext。我是否可以为查询定义上下文,以便直接使用程序集、方法、JustMyCode、...etc?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-07 07:59:41

正如ICQLinqExecutionContext文档中的解释:这个接口是为CQLinq实现的使用保留的,不打算在代码中使用。

但是,正如您注意到的,只要稍加重写,您就可以访问100%的CQLinq特性(比如使用codeBase.Application.Methods整数的Methods)。

另外,通过阅读关于预定义域的CQLinq语法文档,您可以看到像CQLinq中的Methods这样的域在编译后CQLinq被翻译成context.CodeBase.Methods。您真正缺少的不是接口ICQLinqExecutionContext,而是CQLinq编译后的时间,这在C#中是不可用的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19202675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档