0

の拡張メソッドを作成しましたが、コード内のすべての をwithActionに置き換えたいと考えています。しかし問題は、これは var 名の例にすぎず、実際にはすべて異なることです。で検索すると、明らかにひどい結果が得られます。コード内のすべての個々の変数の参照を検索して調べ、その中から直接呼び出しを見つけるのは、ちょっと遅いです。action()action.SafeInvoke()action()Action

変数名が不明な場合、演算子Actionによる呼び出しのすべての発生を何らかの方法で見つけることは可能ですか?()

4

1 に答える 1

2

私が理解しているように、次のActionようなタイプのインスタンスがあります。

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

そして、あなたはコードに持っています:

foo();
bar();

とに変化foo()するものが必要です。foo.SafeInvoke()bar()bar.SafeInvoke()

Visual Studio には、これを自動的に行うものはなく、それを行うために何かを書くことは簡単ではありません。手動で変更を加えるよりも、その拡張機能に多くの時間を費やすことになります。

Visual Studio の「使用箇所の検索」機能を使用して、使用されているすべての場所を見つけることができますAction。少なくとも、変更が必要な場所を見つけるのに役立ちます。

あなたSafeInvokeが何をしているのか知りたいです。null チェックだけの場合は、本当に必要かどうかを検討する必要があります。

于 2013-09-16T16:16:50.897 に答える