Я пытаюсь получить ошибку, когда закончится мой запрос. Я отправляю requset из проекта клиентского проекта в сервер. это мой кодTaskCanceledException не работает в HttpClient
System.Threading.CancellationTokenSource cts = new System.Threading.CancellationTokenSource();
try
{
response = await client.GetAsync(uri, cts.Token);
if (response.IsSuccessStatusCode)
{
// Serialize
var ObjSerializeReciveData = response.Content.ReadAsStringAsync().Result;
var ObjDeDeserializeReciveData = JsonConvert.DeserializeObject<ResponseModel<PagedListResult<SearchContentSimplifiedDTO>>>(ObjSerializeReciveData);
//ViewBag.Query = Model.Query;
if (ObjDeDeserializeReciveData == null || ObjDeDeserializeReciveData.Data.TotalCount == 0)
{
return null;
}
return PartialView("_DropDownSearch", ObjDeDeserializeReciveData.Data);
}
}
catch (System.Threading.Tasks.TaskCanceledException)
{
if (cts.Token.IsCancellationRequested)
{
return null
.................
я отправить запрос на сервер и, например, сервер выключен, то мое время ожидания запроса закончен и возврат Исключение CancellationTokenSource. но мой улов не работает, чтобы получить исключение. Thnks.
когда я меняю этот код response = await client.GetAsync (uri, cts.Token) .Result; я получаю эту ошибку \t Не могу дождаться 'System.Net.Http.HttpResponseMessage' –
Какая ошибка? Просто поймать (Исключение e), остановить с отладчиком и посмотреть на тип исключения –
мое внутреннее исключение - {«Невозможно подключиться к удаленному серверу»} и system.net.webexception –