Принудительное извлечение статического метода в Visual Studio - PullRequest
0 голосов
/ 17 февраля 2012

Я хотел бы переместить метод из одного класса в другой, что означает преобразование переменных экземпляра этого метода в аргументы метода в другом классе.

Есть ли способ сделать это?Было бы замечательно что-то вроде статического метода извлечения (то есть принудительное статическое извлечение метода, что автоматически переводило бы все переменные экземпляра в параметры).стать:

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

Спасибо.

1 Ответ

4 голосов
/ 17 февраля 2012

Выберите строку только с локальными переменными, затем нажмите CTRL + R + M (или щелкните правой кнопкой мыши, рефакторинг, метод извлечения).Если вы не используете какие-либо поля в извлекаемом блоке кода, он автоматически сделает его статичным.

Вам нужно будет вручную убедиться, что нет ссылок на поля - у него нет возможности сделать этодля вас.

Плагины, такие как ReSharper, CodeRush и JustCode, должны иметь возможность перемещать метод между классами;и, возможно, автоматически удалять ссылки на поля.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...