DbContext.SaveChangesAsync 方法
[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]
将在此上下文中所做的所有更改异步保存到基础数据库。
命名空间: System.Data.Entity
程序集: EntityFramework(在 EntityFramework.dll 中)
语法
声明
Public Overridable Function SaveChangesAsync As Task(Of Integer)
用法
Dim instance As DbContext
Dim returnValue As Task(Of Integer)
returnValue = instance.SaveChangesAsync()
public virtual Task<int> SaveChangesAsync()
public:
virtual Task<int>^ SaveChangesAsync()
abstract SaveChangesAsync : unit -> Task<int>
override SaveChangesAsync : unit -> Task<int>
public function SaveChangesAsync() : Task<int>
返回值
类型:System.Threading.Tasks.Task<Int32>
表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。
异常
例外 | 条件 |
---|---|
DbUpdateException | 向数据库发送更新时出错。 |
DbUpdateConcurrencyException | 数据库命令未影响预期行数。 这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 |
DbEntityValidationException | 保存已中止,因为实体属性值的验证失败。 |
NotSupportedException | 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 |
ObjectDisposedException | 上下文或连接已释放。 |
InvalidOperationException | 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 |
备注
不支持对同一上下文实例执行多个活动操作。 使用“await”以确保在对此上下文调用另一个方法前完成了所有异步操作。