数据持久化与数据门户技术详解
1. ICriteria 接口
ICriteria 接口可由任何条件类实现,对于未嵌套在业务类内部的条件类,则必须实现该接口。例如,CriteriaBase 和 SingleCriteria 就实现了此接口。在后续实现 SimpleDataPortal 时,会看到该接口的具体使用方式。
2. 分布式事务支持
- 单数据库更新 :支持数据库事务的技术有多种,包括数据库自身的事务、ADO.NET、Enterprise Services 和 System.Transactions。在更新单个数据库(即使涉及多个表)时,这些技术都能正常工作,具体选择通常基于实现的速度和简易程度。
- 多数据库更新 :若应用程序需要更新多个数据库,选择会相对受限。保护跨多个数据库更新的事务称为分布式事务。在 SQL Server 中,可在存储过程中实现分布式事务;在数据库外部,可使用 Enterprise Services 或 System.Transactions。分布式事务技术借助 Microsoft DTC 来管理跨多个数据库的事务,但将 DTC 纳入事务会产生显著的性能成本,因为应用程序、DTC 和数据库引擎在事务处理过程中都需相互交互,以确保一致的提交或回滚,而这种交互会耗费时间。
- TransactionScope 对象 :System.Transactions 命名空间通过 TransactionScope 对象提供了一种折中的方案。它最初使用非分布式事务(如 ADO.NET 中使用的事务),因
超级会员免费看
订阅专栏 解锁全文
1869

被折叠的 条评论
为什么被折叠?



