有没有办法模仿ThreadStatic与HttpContext.Current.Items一起使用?

时间:2011-05-25 09:10:19

标签: .net asp.net attributes threadstatic

由于ASP.Net中的线程敏捷性ThreadStatic不适合在Web应用程序中用于将静态属性访问从一个请求隔离到下一个请求。

为了避免大量调用HttpContext.Current.Items以及相关的空检查等等,.Net框架提供了任何技巧,我可以创建一个类似于{{1}的属性如果当前代码在ASP.Net请求上下文中执行,则使用ThreadStatic

注意:我知道ThreadStaticAttribute是一个特殊情况,内部没有功能代码,并且在它的任何魔法工作之前由JIT编译器检查。

1 个答案:

答案 0 :(得分:2)

n2cms项目内置了AdaptiveContext class,您可以查看一下。我知道有一些关于在log4net中做类似事情的讨论,但我不确定是否已完成。

据我所知,框架中没有任何内容。