Действительно ли необходимо добавлять вызов .ConfigureAwait при вызове ожидаемого метода? - PullRequest
0 голосов
/ 13 апреля 2020

Я занимаюсь разработкой приложения с использованием Visual Studio 2019 с проверкой кода.

Некоторые советы по проверке кода важны, однако я получаю много подсказок в моих ожидаемых вызовах методов, таких как

var appUser = await UserManager.FindByIdAsync(User.Identity.GetUserId());

В этом случае система предлагает мне поставить

var appUser = await UserManager.FindByIdAsync(User.Identity.GetUserId()).ConfigureAwait(true);

или

var appUser = await UserManager.FindByIdAsync(User.Identity.GetUserId()).ConfigureAwait(false);

Действительно ли необходимо так испачкать код?

Это приложение MVC5 ASP. NET.

С уважением, Хайме

1 Ответ

1 голос
/ 13 апреля 2020

Неужели действительно нужно так испачкать код?

Если вы не блокируете , то вам не нужно ConfigureAwait(false).

В общем случае ConfigureAwait(false) рекомендуется , потому что большая часть кода не знает , будут ли его вызывающие блокировать или нет. Но если этот код является частью вашего приложения (т. Е. Не библиотеки), и вы уверены, что ваше приложение не блокирует асинхронный код, то вы можете пропустить ConfigureAwait(false).

Стивен Toub недавно опубликовал FAQ по ConfigureAwait .

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