2
A
回答
1
该会话在ASP.NET Web应用程序的任何级别都可用作存储介质,但涉及访问它的许多类都是密封的并且不容易嘲弄(HttpContext,HttpSessionState等),并且它被认为是不好的练习让您的业务逻辑“知道”应用程序的托管方式。我建议在通用ICache接口后面隐藏任何缓存实现,如果您在另一个应用程序中重新使用BLL,则可轻松切换。
提供给你几个选项:
使用HttpContext.Items(http://www.4guysfromrolla.com/articles/060904-1.aspx)
会话缓存每个请求高速缓存A使用HttpContext.Session(如果你的应用程序是负载平衡的,并且你没有粘性会话必须做额外的工作来确保一致的会话状态(例如使用SqlSessionState))。
使用HttpContext.Cache或HttpRuntime.Cache的应用程序缓存(如果您的应用程序负载均衡且没有粘性会话,则必须执行额外的工作以确保一致的应用程序缓存)。
希望这会有所帮助。
相关问题
- 1. 在各种缓存中有意义
- 2. Symfony通过defaut选择各种选项
- 3. ASP.NET Web API中的缓存选项
- 4. h2的各种选项 - 哪个更快?
- 5. 解决PermGen问题的各种选项
- 6. 填充从各种选项中选择的选项 - jquery
- 7. 什么是各种浏览器数据缓存大小?
- 8. 一个缓存为各种应用程序?
- 9. 确定各种文件系统的高速缓存未命中
- 10. 选择使用概率的各种选项
- 11. JQuery UI选项卡缓存
- 12. 有缓存的spiderable选项?
- 13. ASP.NET页面中的各种asp控件
- 14. 什么是在MYSQL表中存储UUID的各种选项及其折衷?
- 15. MVC和JQuery UI选项卡 - 如何锁定各种操作的选项卡?
- 16. ASP.NET UnauthorizedAccessException从缓存中访问项目
- 17. 缓存asp.net viewdata
- 18. ASP.Net缓存
- 19. ASP.NET缓存
- 20. asp.net-mvc:javascript缓存
- 21. 缓存在ASP.net
- 22. ASP.net缓存
- 23. ASP.Net缓存
- 24. asp.net mvc - 缓存
- 25. Asp.NET缓存
- 26. 使用各种选项运行数月的批处理脚本
- 27. 使用具有各种选项的表单搜索数据库
- 28. 与各种选项的多对多关系
- 29. 什么是Linux中的“./configure”的各种选项/参数
- 30. 从各种类型中选择X个项目
这真的是一个悬而未决的问题。只要BLL层是ASP.NET请求的一部分,会话就完全可用于BLL层。 (或类似的实施会议)。至于你的问题:有大量的缓存可能性。查看BCL中的新缓存支持。这可能是一个很好的开始>> http://msdn.microsoft.com/en-us/library/dd985642.aspx – Polity