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

标签 c# asp.net refactoring

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

是否有工具可以帮助识别解决方案的这些元素,以便我们重构它们?

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

似乎仍然有人会创建一个工具来处理这些情况并创建未使用的类/页面/用户控件的候选列表

最佳答案

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

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

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

关于c# - 识别未使用的类/控件/页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8310616/

相关文章:

c# - 使用WFA接口(interface)插入数据时出现sqlException

c# - Windows 窗体最大化并恢复正常

c# - 通过 WCF 中的命名管道将消息从 Windows 服务记录到应用程序

c# - Unity3D UI,计算拖动项目的位置?

javascript - 如何在页面加载时将内部 html 的值获取到 C# 代码隐藏中

c# - 将 3 个 GridView 导出到 3 个不同的工作表中

Java:将外国恐怖代码转化为干净 API 的最佳实践......?

java - 自定义 Eclipse 重构预览中的错误

java - 如果在验证规则中使用类型代码,如何进行重构以消除类型代码?

c# - 如何在 ASP.NET MVC 4 中将 View 和局部 View 返回到索引布局?