Проверка пользовательского кода для ConfigureAwait

Я создал свой собственный способ по существу устанавливать ConfigureAwait(false) только один раз в верхней части каждого асинхронного метода, что позволяет мне не добавлять приложение ConfigureAwait(false) в конце каждого вызова await. Теперь я могу сделать что-то вроде:

  public async Task MyMethod()
  {
     await ConfigureAwait.Off;

     var data = await _client.GetDataAsync();
  }

Вот проблема: у меня есть очень большое решение, и я сейчас пытаюсь найти эффективный способ добавить это к любому асинхронному методу и удалить любые избыточные вызовы.ConfigureAwait(false). Я пытался найти шаблон Resharper без какой-либо удачи. Любые идеи или предложения с благодарностью.

Это ниже не работает вообще с помощью resharpers Search for Pattern:

Шаблон поиска:

 public async Task $method$($args1$) { $stmt$ }

Заменить шаблон:

 public async Task $method$($args1$) 
 {
     await ConfigureAwait.Off;

     $stmt$
 }

Примечание. Это также не учитывает асинхронные методы, которые уже могут его определять, а также удаление любых избыточных.ConfigureAwait(false);

0 ответов

Другие вопросы по тегам