【发布时间】:2013-11-18 03:52:33
【问题描述】:
我在使用 Nhibernate 维护一个非常大的事务时遇到了挑战。所以,让我们说,我正在保存大量实体。如果我不刷新事务 N,让我们说 10000,那么性能会由于 Nh 会话过度拥挤而被扼杀。如果我进行刷新,我会在 DB 级别上放置锁,这与已提交的读取隔离级别相结合确实会影响工作应用程序。另请注意,实际上我导入了一个实体,其业务逻辑是系统的核心之一,并且在其导入时大约有 10 个表受到影响。由于手动维护级联,这使得无状态会话成为一个坏主意。
将 BL 迁移到存储过程是一个很大的挑战,原因如下:
- 领域中已经存在复杂的OO业务逻辑 应用类别,
- 将引入重复的 BL。
理想情况下,我想将会话刷新到某个文件,然后才完成数据准备,我想执行其内容。有可能吗?
非常欢迎任何其他建议/最佳做法。
【问题讨论】:
标签: c# sql-server nhibernate