在Visual Studio中查找空方法

4

如何查找项目中特定类型的所有空方法?例如,查找定义在Asp.Net应用程序中的所有空Page_Load方法。


1
@CodyGray:我不认为这是任何一个问题的重复;这个问题涉及到空方法正在被使用(作为事件处理程序),因此它们不是死代码。 - icktoofay
3个回答

7
在Visual Studio的查找工具中,将其设置为使用正则表达式。使用以下表达式查找空方法:
void\ .*\(*\)(\ |(\r\n))*{(\ |(\r\n))*}

查找空的 Page_Load 方法:

void\ (Page_Load).*\(*\)(\ |(\r\n))*{(\ |(\r\n))*}

所有这些方法都适用于“void”方法。对于其他类型,您可以更改表达式或进一步概括表达式以匹配任何类型的返回类型。

即使你自己回答了问题,请将其标记为已解决。我搜索了一下,我的第一眼告诉我这个问题在这里没有得到解决,所以我不得不测试一下。对于每个人来说,都有一个绿色的钩子表示工作解决方案是有益的 :) - C4d

1
为了改进ravinsp的答案,如果你想要“查找全部”实际上可以突出整个方法(这样你就可以进行搜索和替换以删除它们),请使用正则表达式。
 ^.*void\ .*\(*\)(\ |(\r\n))*{(\ |(\r\n))*}

0
你可以使用 FxCop(或可能是StyleCop)来检测空方法。可以在这里找到一个用于检测空方法的FxCop规则(虽然我没有测试过,但你应该能够修改它以避免删除方法)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接