2012-05-29 26 views
0

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

+0

你可以把一些代码,以便我们能够帮助? – Chris

回答

2

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

+0

如果AspNetCompatibilityMode打开,那么你可以得到HttpContext。我在随后的调用中获得它,但问题仅在第一次调用。我认为这与生成cookie的表单认证有些相关。 – Ankit