在静态类中访问HttpContext.Current

我可以在静态类和Method中调用HttpContext.Current吗?

我想在每个用户的基础上存储一个值,但希望能够以静态方式访问它。

这会有用吗?

 public static class StaticClass { public static string SomeThing { get { return HttpContext.Current.Items["SomeItem"].ToString(); } } } 

是的,这是一种有用的方式,当然,调用它的线程当前必须处理一个使其有用的请求。

你为什么不试试?

是的,这是完全可能的(虽然不一定是一个好的设计),只记得在你的项目中引用System.Web.dll并检查HttpContext.Current是否为null ,以防你最终在非ASP.NET环境中运行。

是的,它是一种静态方法,因此您可以从任何您喜欢的地方调用它。 正如安东尼所说,“当前”上下文取决于调用线程,因此您需要确保使用正确的线程。