当前位置:  开发笔记 > 编程语言 > 正文

有没有一个工具可以在C#应用程序中查找未引用的函数(死的,过时的代码)?

如何解决《有没有一个工具可以在C#应用程序中查找未引用的函数(死的,过时的代码)?》经验,为你挑选了3个好方法。

如果没有从任何地方调用foo(),我想删除foo().



1> user7116..:

Gendarme将检测没有上游呼叫者的私有方法.它是跨平台的,最新版本处理" AvoidUncalledPrivateCodeRule ".

FxCop将检测没有上游调用者的公共/受保护方法.但是,如果没有上游调用者,FxCop不会检测所有方法,因为它是为了检查您的代码是否是库的一部分,因此公共成员被排除在外.您可以使用NDepend搜索没有上游调用者的公共成员,我在此处详细介绍了其他StackOverflow答案.

(编辑:添加有关Gendarme的信息,实际上提出了提问者的要求)


我刚试过FxCop.它没有检测到未使用的公共方法,这是我最感兴趣的.

2> Ian Nelson..:

NDepend还将报告可能未使用的代码.



3> Helen Toomik..:

请记住,如果标记方法,Resharper(以及可能还有其他类似工具)将不会突出显示未使用的方法public.静态代码分析工具无法检查解决方案之外的其他程序集是否使用了程序集的方法.因此,清除未使用的方法的第一步是降低其对private或的可见性internal.


ReSharper的解决方案范围分析将检测未使用的非私有类型或成员声明.
推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有