在拦截器上检查时,HttpContext.Current为null

时间:2012-05-29 06:35:07

标签: asp.net wcf rest interceptor

我的asp.net应用程序具有表单身份验证。当用户登录时,他被重定向到新页面abc.aspx。在此页面上,在javascript中,在document.ready上,对某些具有AspNetCompatibilityMode的服务进行服务调用。在服务的拦截器中,我尝试找到HttpContext.Current但是当它第一次请求应用程序时,拦截器没有得到HttpContext.Current并且被发现为null。之后,它永远不会为null,而只是在对应用程序的第一次请求时。

2 个答案:

答案 0 :(得分:2)

如果使用WCF,则在wcf中没有HttpContext.Current。您必须在Session中使用Service类的InstanceContextMode。

答案 1 :(得分:1)

Peer正确地说,WCF中没有HttpContext。您可以使用OperationContext.Current.RequestContext

您必须按照以下链接

http://www.danrigsby.com/blog/index.php/2008/05/23/understanding-instancecontext-in-wcf/