我没有在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);
}
如您所见,在此post函数中,它在另一个类中调用一个函数。该函数被调用
public ServiceStatus Update(int sectionID, int compID, DateTIme dateCompleted)
{
throw new Exception();
}
照原样,当我发布到控制器中的SectionMassUpdate函数时,什么也没有发生。它转到呼叫,并且不会引发异常或任何异常。如果我使SectionMassUpdate函数同步并删除异步和任务,则会引发异常。为什么会这样,我该怎么做才能引发异常,而不是页面什么也不做。