httpcontext是否已使用.net 4.0更改?

时间:2011-09-08 15:55:37

标签: asp.net-mvc-2 .net-4.0

我试图访问httpcontext.current,但我不能。我通常可以像HttpContext.Current.User.Identity;那样做,但现在它就像HttpContext.User.Identity;HttpContext.Response.Cookies

对我而言,只要它起作用就没关系,但我只是有意义

2 个答案:

答案 0 :(得分:0)

你想从哪里访问HttpContext?

如果您正在使用ASP.NET MVC并尝试从Action访问它,例如。名为HttpContext的'System.Web.Mvc.Controller'上有一个属性,它返回一个HttpContextBase实例,可能就是你要找的东西。

此属性是访问HTTP上下文的首选方法。

因为类名与属性名相同,所以使用该属性而不是类。

如果你真的想通过HttpContext类的static属性访问HttpContext,你仍然可以这样做:

System.Web.HttpContext.Current.User.Identity

答案 1 :(得分:0)

在这方面,没有改变(但在许多其他方面已经改变)。

如果您正在使用MVC,则没有名称空间前缀的控制器中的HttpContext指的是Controller上的属性,而不是类。

所以你应该可以使用:

System.Web.HttpContext.Current

或者,在MVC中,快捷方式只是HttpContext,它是HttpContext.Current的包装。