如何在代码中找到所有`action()`?

时间:2013-09-16 16:00:14

标签: visual-studio-2010 visual-studio search

我为Action制作了一个扩展方法,我希望在代码中将所有action()替换为action.SafeInvoke()。但问题是action只是一个示例var名称,实际上它们都是不同的。按()搜索显然会产生可怕的结果。通过Action搜索并在代码中查找每个var的引用并在其中查找直接调用有点慢。

当变量名称未知时,是否有可能以某种方式查找Action运算符发生的所有()次调用?

1 个答案:

答案 0 :(得分:2)

据我所知,你有类型为Action的实例:

Action foo = ...
Action bar = ...

然后你有代码:

foo();
bar();

您希望将foo()更改为foo.SafeInvoke()并将bar()更改为bar.SafeInvoke()

Visual Studio中没有任何内容可以自动为您执行此操作,并且编写一些内容将是非常重要的。与手动进行更改相比,您在该扩展上花费的时间要多得多。

您可以使用Visual Studio的“查找用法”功能查找Action使用的每个位置。这至少可以帮助您找到进行更改的位置。

我很想知道你SafeInvoke做了什么。如果它只是一个空检查,你可能想要考虑它是否真的有必要。