我正在浏览一个ASP.NET MVC应用程序,并且有一些代码调用SaveChangesAsync()以在实体更新时保存对数据库的更改,但调用函数中的下一个语句是return语句.根据我的理解,调用SaveChangesAsync()会将控件返回给调用函数,所以我很困惑为什么当它已经在函数末尾时需要使用SaveChangesAsync().例如,在下面的代码中,调用函数中的下一个语句是return RedirectToAction(...);
// Calling function [HttpPost] public async TaskEdit(Person p) { await PersonRepository.UpdatePerson(p); return RedirectToAction(...); } // PersonRepository.UpdatePerson public async Task UpdatePerson(Person p) { ... await db.SaveChangesAsync(); return true; }
swestner.. 5
是的,如果没有逻辑继续等待操作,则使用await是有意义的.
等待的一个主要优点是它将执行控制返回给调用环境.这允许在等待操作完成时执行其他计划任务.
在您的情况下,这意味着控制权将返回给Web主机,从而允许服务器上的其他任务计算一些处理时间
是的,如果没有逻辑继续等待操作,则使用await是有意义的.
等待的一个主要优点是它将执行控制返回给调用环境.这允许在等待操作完成时执行其他计划任务.
在您的情况下,这意味着控制权将返回给Web主机,从而允许服务器上的其他任务计算一些处理时间