题
我有一个独立的解决方案(在任何其他项目中使用了非DLL的非DLL,因此不必担心在其他地方使用的方法)。
我正在尝试找出一种确定根本不使用的每个方法/属性的方法。
因此,我不能只看私人方法/属性,还需要检查公共方法和属性。
我过去使用过这样做的程序,但仅用于私人方法/属性(其他项目没有使用它的东西)。即使我能记住它是什么,它也无法满足我的需求。
我研究了NDEPENT,但不确定这是否是应用程序中的标准性,或者我是否需要为其编写自定义CQL语句。
有人知道执行此操作的应用程序吗?或者如果Ndepender可以做到这一点,在Nddection中要做多么难?
解决方案
如果您启用 解决方案广泛分析.
其他提示
是的 - 我会说Ndectient是这种依赖性分析的首选工具。
它带有大量预先进行的CQL查询,可以精确地做这种事情,并且根据Exisitng作为模板,编写自己的内容非常简单。
AT最简单,要检测未使用方法的CQL查询看起来像这样:
SELECT
METHODS // Get me a list of methods
WHERE
MethodCa == 0 // Where their afferent coupling is zero, (afferent coupling being the number of other methods that call it)
这只是一个示例,可以向您展示CQL的外观。一个更高级的查询以找到未使用的方法,以Ndected提供。
看 帕特里克·史卡奇(Patrick Smacchia)的博客 有关更多信息。
总体而言,其他工具(FXCOP和RESHARPER)也可以帮助您解决这个问题,但是这种依赖性分析是Ndectient的Raison d'Etre。
代码分析(FXCOP)还可以找到未使用的方法和属性。它将引起警告,以“没有上游呼叫者使用此呼叫,考虑删除它”的效果。
它内置在Visual Studio 2010 Ultimate中。我用这个。
不隶属于 StackOverflow