Как выполнить зачистку всего проекта для «Удалить избыточный улов» с помощью Resharper? - PullRequest
2 голосов
/ 29 апреля 2010

Я имею дело с большой старой кодовой базой, в которой много таких:

try
{
    ...
}
catch
{
    throw;
}

Решарпер услужливо помечает их и предлагает опцию «Удалить лишний улов», но мне не нравится проходить один за другим, я хотел бы уничтожить их все сразу. Есть ли способ сделать это с помощью Resharper, возможно, интегрировав его с «Очисткой кода»?

1 Ответ

5 голосов
/ 29 апреля 2010

Если вы используете Resharper 5.0, вы можете импортировать следующий шаблон (сохранить его как файл XML) в Каталог шаблонов (Resharper> Инструменты> Каталог шаблонов> Импорт), затем запустить Поиск сейчас, чтобы найти все экземпляры, чтобы вы могли просмотреть и выберите для их замены.

<CustomPatterns>
  <Pattern Severity="HINT">
    <Comment>useless catch</Comment>
    <ReplaceComment>remove useless catch</ReplaceComment>
    <ReplacePattern>$code$</ReplacePattern>
    <SearchPattern><![CDATA[try
{
    $code$
}
catch
{
    throw;
}]]></SearchPattern>
    <Params />
    <Placeholders>
      <StatementPlaceholder Name="code" Minimal="1" Maximal="-1" />
    </Placeholders>
  </Pattern>
</CustomPatterns>

Шаблон работал на моем тестовом коде. Я не знаю, как механизм сопоставления с образцом обрабатывает пробелы, поэтому вам, возможно, придется поменять табуляцию на пробелы или на то, что соответствует вашему стандарту кода.

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