У меня нет большого опыта программирования asyn c в MVC, и я не уверен, что происходит. У меня есть контроллер MVC с функцией:
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> SectionMassUpdate(SectionMassUpdateViewModel model)
{
if (ModelState.IsValid)
{
var status = _sectionService.Update(model.SectionID, model.CompID, model.DateCompleted);
if (!status.IsValid)
{
ModelState.AddValidationErrors(status);
}
else { return Json(new { success = true }); }
}
return PartialView("_sectionUpdate", model);
}
В этой пост-функции, как вы можете видеть, он вызывает функцию в другом классе. Вызываемая функция
public ServiceStatus Update(int sectionID, int compID, DateTIme dateCompleted)
{
throw new Exception();
}
Как есть, когда я отправляю сообщение в функцию SectionMassUpdate в контроллере, ничего не происходит. Он переходит к вызову, и никаких исключений не возникает. Если я сделаю функцию SectionMassUpdate синхронной и удалю asyn c и Task, будет выброшено исключение. Почему это происходит и что мне делать, чтобы исключение было создано вместо того, чтобы страница ничего не делала.