Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 从自定义RouteHandler访问会话数据?_Asp.net Mvc_Routing - Fatal编程技术网

Asp.net mvc 从自定义RouteHandler访问会话数据?

Asp.net mvc 从自定义RouteHandler访问会话数据?,asp.net-mvc,routing,Asp.net Mvc,Routing,我将以这里的示例为基础: 我现在想做的是,在允许显示有效图像之前,检查会话中的某些数据。是否可以从自定义RouteHandler或任何其他类型的持久化数据中访问会话数据?您有权从requestContext访问会话: private static void ProcessRequest(RequestContext requestContext) { var session = requestContext.HttpContext.Session; 您有权从requestContext

我将以这里的示例为基础:


我现在想做的是,在允许显示有效图像之前,检查会话中的某些数据。是否可以从自定义RouteHandler或任何其他类型的持久化数据中访问会话数据?

您有权从requestContext访问会话:

private static void ProcessRequest(RequestContext requestContext)
{
   var session = requestContext.HttpContext.Session;

您有权从requestContext访问会话:

private static void ProcessRequest(RequestContext requestContext)
{
   var session = requestContext.HttpContext.Session;
我发表了另一个问题的答案

查看应用程序生命周期概述(),特别是由HttpApplication管道处理请求的行。在生命周期阶段表中

虽然在管道的阶段10(引发MapRequestHandler事件)中调用了
IRouteHandler
对象的
GetHttpHandler
,但在阶段12(引发AcquisiteRequestState事件)中恢复了会话。这就是为什么在GetHttpHandler函数期间无法访问会话变量,并且
RequestContext.HttpContext.Session
始终为
null

我发表了另一个问题的答案

查看应用程序生命周期概述(),特别是由HttpApplication管道处理请求的行。在生命周期阶段表中


虽然在管道的阶段10(引发MapRequestHandler事件)中调用了
IRouteHandler
对象的
GetHttpHandler
,但在阶段12
(引发AcquisiteRequestState事件)中恢复了会话。这就是为什么在GetHttpHandler函数期间无法访问会话变量,并且
RequestContext.HttpContext.Session
始终为
null

我得到的是null。嗯,我再试一次。谢谢。这种方法有效吗?当尝试从自定义路由句柄访问时,我总是得到null我在webforms中有一个自定义路由句柄,在自定义路由句柄中访问会话时总是返回null。我认为
ProcessRequest
方法属于
IHttpHandler
我得到了null。嗯,我再试一次。谢谢。这种方法有效吗?当尝试从自定义路由句柄访问时,我总是得到null我在webforms中有一个自定义路由句柄,在自定义路由句柄中访问会话时总是返回null。我认为
ProcessRequest
方法属于
IHttpHandler