asp.net - 什么时候应该使用 session-per-request 模式

标签 asp.net database design-patterns orm

这种模式随处可见,但 Linq to SQL 并没有实现它。如果 session /工作单元对象是轻量级的(可以在不影响性能的情况下创建和销毁),并且连接池使数据库连接保持事件状态,那么我为什么以及何时需要每个请求一个 session 模式?

最佳答案

我相信 session-per-request 的想法更多的是关于何时打开和关闭 session ,而不是为了提高性能。

思路是

  1. 打开一个 session 将在您的代码被调用之前开始一个事务
  2. 您的业务逻辑您的框架可以完全访问数据库,直到最后可能的时刻
  3. 您的交易是为您 promise 的,而不是每次都由您自己完成

#2 的想法很重要,这样您就可以混合使用 Web 框架和延迟加载数据;如果在执行代码并关闭 session 后呈现数据时调用了 getter 方法,则无法延迟加载该 getter 的结果。

关于asp.net - 什么时候应该使用 session-per-request 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/702605/

相关文章:

database - 规范化一张表

java - 在 Java 模型- View - Controller 设计中访问模型

用于理顺递归的 C++ 模板技术?

javascript - 自定义验证器中的 ClientValidationFunction 未触发

javascript - 当选中同一个 GridView 中的 CheckBox 时,如何启用和禁用 GridView 中的 LinkBut​​ton?

c# - 验证 ASP.Net 文本框不为空但允许空格?

asp.net - ASP.NET Core 中的性能计数器在哪里?

php - 使用数据库信息更改文本的 CSS/外观

sql - 如何在 SSMS 2012 中创建 UNIQUE 约束

c# - 存储库模式中的可重用模型