如何将EntityFramework CodeFirst模式下的数据库事务管理改写为一个长尾?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2836个文字,预计阅读时间需要12分钟。
一、什么是事务+处理以数据为中心的应用时,另一个重要的主题是事务管理。ADO.NET为事务管理提供了非常高效和实用的API。由于EF运行在ADO.NET之上,因此EF可以利用ADO.NET的事务管理功能。
一、什么是事务
处理以数据为中心的应用时,另一个重要的话题是事务管理。ADO.NET为事务管理提供了一个非常干净和有效的API。因为EF运行在ADO.NET之上,所以EF可以使用ADO.NET的事务管理功能。
当从数据库角度谈论事务时,它意味着一系列操作被当作一个不可分割的操作。所有的操作要么全部成功,要么全部失败。事务的概念是一个可靠的工作单元,事务中的所有数据库操作应该被看作是一个工作单元。
从应用程序的角度来看,如果我们有多个数据库操作被当作一个工作单元,那么应该将这些操作包裹在一个事务中。为了能够使用事务,应用程序需要执行下面的步骤:
1、开始事务。
2、执行所有的查询,执行所有的数据库操作,这些操作被视为一个工作单元。
3、如果所有的事务成功了,那么提交事务。
4、如果任何一个操作失败,就回滚事务。
二、创建测试环境
1、提到事务,最经典的例子莫过于银行转账了。我们这里也使用这个例子来理解一下和事务相关的概念。
本文共计2836个文字,预计阅读时间需要12分钟。
一、什么是事务+处理以数据为中心的应用时,另一个重要的主题是事务管理。ADO.NET为事务管理提供了非常高效和实用的API。由于EF运行在ADO.NET之上,因此EF可以利用ADO.NET的事务管理功能。
一、什么是事务
处理以数据为中心的应用时,另一个重要的话题是事务管理。ADO.NET为事务管理提供了一个非常干净和有效的API。因为EF运行在ADO.NET之上,所以EF可以使用ADO.NET的事务管理功能。
当从数据库角度谈论事务时,它意味着一系列操作被当作一个不可分割的操作。所有的操作要么全部成功,要么全部失败。事务的概念是一个可靠的工作单元,事务中的所有数据库操作应该被看作是一个工作单元。
从应用程序的角度来看,如果我们有多个数据库操作被当作一个工作单元,那么应该将这些操作包裹在一个事务中。为了能够使用事务,应用程序需要执行下面的步骤:
1、开始事务。
2、执行所有的查询,执行所有的数据库操作,这些操作被视为一个工作单元。
3、如果所有的事务成功了,那么提交事务。
4、如果任何一个操作失败,就回滚事务。
二、创建测试环境
1、提到事务,最经典的例子莫过于银行转账了。我们这里也使用这个例子来理解一下和事务相关的概念。

