Выкинь новое исключение в метод asyc - PullRequest
0 голосов
/ 02 июля 2018

Как правильно генерировать исключение в асинхронном методе?

public async void Method()
{
  if(value)
    throw new Exception("Error!");
}

1 Ответ

0 голосов
/ 02 июля 2018

Вот так, но верните Task. Когда вы await Task, это вызовет исключение в вызывающей стороне.

public async Task DoSomethingAsync()
{
    throw new Exception("Error!");
}

await DoSomethingAsync(); // throws

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

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