2012-02-16 17 views
0

あるクラスから別のクラスにメソッドを移動したいとします。つまり、そのメソッドのインスタンス変数を他のクラスのメソッドの引数に昇格させることです。Visual Studioで静的メソッドに強制的に抽出する

これを行う方法はありますか?抽出液の静的メソッドのようなもの(すなわち、自動的にパラメータにすべてのインスタンス変数を促進する静的に抽出する方法を、強制的に。)素晴らしいことだ例えば

string y = InstanceVariable; 
return new string(y.ToCharArray().Reverse().ToArray()); 

になる必要があります。

private static string ExtractedMethod(string InstanceVariable) 
{ 
    string y = InstanceVariable; 
    return new string(y.ToCharArray().Reverse().ToArray()); 
} 

ありがとうございました。

答えて

4

ローカル変数のみの行を選択し、CTRL + R + M(または右クリック、リファクタリング、抽出方法)を選択します。コードブロック内のフィールドを使用していない場合は、自動的に静的になります。

フィールド参照がないことを手動で確認する必要があります。フィールド参照は、あなたのために行うことはできません。

ReSharper、CodeRush、JustCodeのようなプラグインは、クラス間でメソッドをやりとりすることができます。フィールド参照を自動的に削除する可能性があります。

関連する問題