【发布时间】:2010-04-24 11:58:15
【问题描述】:
我有一个 IQueryable 函数。在该函数中,我需要将数据存储和检索到 Session;你们能指出我正确的方向吗?
我查看了会话通常取自 HttpContext.Current 的 HttpSessionStatBase,但这似乎无法在库中完成。我错过了什么吗?
提前致谢。
【问题讨论】:
标签: model-view-controller session
我有一个 IQueryable 函数。在该函数中,我需要将数据存储和检索到 Session;你们能指出我正确的方向吗?
我查看了会话通常取自 HttpContext.Current 的 HttpSessionStatBase,但这似乎无法在库中完成。我错过了什么吗?
提前致谢。
【问题讨论】:
标签: model-view-controller session
我会避免依赖于静态 HttpContext。我的首选策略是从控制器中的会话中提取信息,并将其作为参数(或设置为属性)传递给您的数据访问层/存储库。如果您觉得必须直接使用 Session,那么我将以相同的方式将其提供给 DAL/存储库——作为属性或参数。但是请注意,您正在增加 DAL/存储库和控制器之间的耦合。这将使在非 Web 设置中重用变得更加困难,即,如果您需要从 Windows 服务或例如控制台应用程序。
【讨论】: