asp.net – MVC 3中的SessionState属性是否正常工作?
我正在管理一个相当大的项目,用asp.net webforms mvc3编写,拥有庞大的用户群,并且每日访问量非常高.基本上,在任何特定时刻都有很多要求.
我在MVC中的一个控制器可以动态处理/调整图像大小,它具有以下属性: [SessionState(SessionStateBehavior.Disabled)] 现在,如果控制器中的某个操作尝试访问会话 – 它显然会引发异常 – 所以到目前为止我们还不错. 问题是:如果我进入IIS工作进程窗口(Win Server 2008 R2,IIS 7.5),并检查此站点的当前请求,我有时可以看到对此控制器中的操作的请求.它们的当前状态锁定在State:RequestAcquireState,Module Name:Session.有时这些锁会在这种状态下持续一两秒钟. 首先,属性的全部要点是否使得对控制器的请求忽略状态,而不是浪费时间(并且可能被锁定)试图获取状态? 如果是这样的话 – 我在这里做错了什么,或问题出在其他地方? 解决方法
[从评论中迁移]
如果您正在使用自定义控制器工厂或路由处理程序,请确保他们知道控制器的会话状态行为.将控制器标记为不需要会话状态需要来自这两个组件的协作.开箱即用,DefaultControllerFactory和MvcRouteHandler旨在使用它.有关更多信息,请参阅DefaultControllerFactory.GetControllerSessionBehavior和MvcRouteHandler.GetHttpHandler.如果您正在编写自定义组件,则可以使用这些方法作为灵感. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc-3 – asp.net mvc 3验证摘要不显示通过不显眼的
- asp.net-mvc – 清理MVC 3.0应用程序中抛出的所有错误的方法
- 实体框架 – MVC3应用程序/服务层/存储库层/ POCO类/ EF4 –
- asp.net – 从Web服务返回XElement
- asp.net – 有没有办法以编程方式添加项目到元素?
- asp.net-mvc – IIS 7与IIS Express的路由错误,生成HTTP 40
- [译]ASP.NET Core 2.0 带初始参数的中间件
- asp.net-mvc – MVC4:禁用某些控制器上的移动视图
- asp.net – 是否有可能告诉IIS 7并行处理请求队列?
- ASP.NET MVC视图模型的最佳实践