0 from a-6ren">
gpt4 book ai didi

ndepend - 使用 NDepend 查找 "Dead"程序集

转载 作者:行者123 更新时间:2023-12-02 02:15:27 24 4
gpt4 key购买 nike

我正在为我的客户评估 NDepend 工具,想知道是否有人可以为以下查询提供帮助:

// <Name>Potentially dead Assemblies</Name>
warnif count > 0
from a in JustMyCode.Assemblies where
a.NbTypesUsingMe == 0
select a

虽然这提供了一个大列表,但我还想检查唯一的引用是否来自测试项目,例如 MyNamespace 仅由 MyNamespace.Tests 引用。

这怎么可能?我没有找到有关创建不采用常量的 IsUsedBy 的文档。

此致

马丁

最佳答案

对于匹配死程序集,您不需要计算类型,只需使用 me 计算程序集:

warnif count > 0 
from a in JustMyCode.Assemblies where
a.AssembliesUsingMe.Count() == 0
select a

如果你想使用程序集匹配类型的条件,你可以这样写:

warnif count > 0 
from a in JustMyCode.Assemblies
let typesUser = Application.Types.Using(a)
where typesUser.Count() == 0 ||
typesUser.ParentNamespaces()
.WithNameWildcardMatchNotIn("MyNamespace.Tests*").Count() == 0
select a

请注意,在之前的查询中,我们甚至没有迭代 typesUser(使用 typesUser.Where(t => ...) ),而是使用 NDepend.API 设置方法,例如WithNameWildcardMatchNotIn() .

关于ndepend - 使用 NDepend 查找 "Dead"程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10916359/

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