识别未使用的类/控件/页面

Mat*_*ans 8 c# asp.net refactoring

我们有一个超过10年的ASP.NET网站项目,有许多未使用/遗留的用户控件和页面.

有没有一个工具可以帮助识别解决方案的这些元素,所以我们可以重构它们?

我知道问题很复杂,因为并非所有类型都被引用为编译器/工具可能识别的类型.例如,通过反射实例化的对象使用表示类名的字符串进行实例化.另外,asp.net页面通常不作为类型引用,而是作为标记中的页面标识符字符串引用.

似乎有人会创建一个处理这些案例的工具,并创建一个未使用的类/页面/用户控件的候选列表

vic*_*chi 2

您可以使用此正则表达式来查找未使用的注册控件

<%@\s*Register\s+TagPrefix\s*=\s*"(?<tagprefix>[^"]+)"\s+TagName\s*=\s*"(?<tagname>[^"]+)"\s+Src\s*=\s*"[^"]+"\s*%>(?!.*?\k<tagprefix>:\k<tagname>\s+)
Run Code Online (Sandbox Code Playgroud)

我使用powergrep来运行这个正则表达式。应启用“点匹配换行符”复选框才能正常工作。