框架:ASP.Net MVC 3
当一个请求进来时,我通过一个全局过滤器拦截请求并基于子域执行数据库查找。从 DB 查找返回的 int 需要持久化到其他对象(即控制器),以便在可能需要该数据时无需再次执行 DB 命中。
我希望避免使用 cookie,因为此信息是系统的相关部分,我不想依赖启用的 cookie。
我其实有两个问题:
到目前为止,我已经提出了一个子域管理器对象,它可以完成繁重的工作,并通过我的 IoC 将管理器对象设置为 HTTP 请求范围,并且我可以在请求期间随时获取该管理器作为可能的解决方案。
在我查找之后,是否有更好的方法在 MVC 请求管道中的不同对象之间传递这些信息?- 我已经检查了以某种方式将信息放回请求中的想法(这与问题 #2 有关)。
如果您要使用 Request 来存储数据(即拦截请求、执行查找、写入请求),那么保存该信息的逻辑位置在哪里?
我查看了会话,但这似乎与为会话配置 Web 服务器的方式密切相关,我已经提到我不想使用 cookie。出于安全原因,其他区域(例如发布数据和查询字符串集合)被锁定。
有什么建议么?