由于ASP.Net中的线程敏捷性,ThreadStatic
不适合在Web应用程序中用于将静态属性访问从一个请求隔离到下一个请求。
为了避免大量调用HttpContext.Current.Items
以及相关的空检查等等,.Net框架提供了任何技巧,我可以创建一个类似于{{1}的属性如果当前代码在ASP.Net请求上下文中执行,则使用ThreadStatic
?
注意:我知道ThreadStaticAttribute是一个特殊情况,内部没有功能代码,并且在它的任何魔法工作之前由JIT编译器检查。
答案 0 :(得分:2)
n2cms项目内置了AdaptiveContext class,您可以查看一下。我知道有一些关于在log4net中做类似事情的讨论,但我不确定是否已完成。
据我所知,框架中没有任何内容。