"но более или менее только об исключении HttpRequestException"
MSDN:
doco проясняет:
HttpRequestException Запрос не удался из-за основной проблемы, такой как подключение к сети, сбой DNS, проверка сертификата сервера или тайм-аут .
Итак, ответ будет «да» , если, скажем, ваша кошка вытащила сетевой шнур, например.
Будет ли этот код выдавать какие-либо исключения,
Да.
или мы можем с уверенностью предположить, что все возможные исключения могут произойти только во время ожидания?
Это может произойти и в следующей строке, потому что к моменту SendAsync
возвращается (не путать с завершением Task
), Task
уже создан, и есть небольшая вероятность его выброса, прежде чем вы перейдете к следующей строке.
var responseAsync = httpClient.SendAsync(something);
EDIT: (из моего комментария ниже) Кроме того, насколько нам известно, SendAsync
может работать некоторая "начальная проверка" перед созданием Task
. В этом случае вам понадобится try/catch
из вышеуказанного.