.net asp.net attributes threadstatic

.net - ¿Hay alguna forma de imitar a ThreadStatic para usar con HttpContext.Current.Items?



asp.net attributes (1)

El proyecto n2cms tiene una clase AdaptiveContext desarrollada que puede ver. Sé que se habló de hacer algo similar en log4net, pero no estoy seguro si eso se completó.

Nada construido en el marco, por lo que yo sé.

Debido a Thread Agility en ASP.Net, ThreadStatic no es un mecanismo apropiado para usar en aplicaciones web para segregar el acceso a propiedades estáticas de una solicitud a la siguiente.

Para evitar muchas llamadas a HttpContext.Current.Items y las comprobaciones nulas asociadas, etc., hay algún truco ofrecido por .Net framework por el cual podría crear un atributo que funciona más o menos como ThreadStatic , pero utiliza HttpContext.Current.Items si el código actual se está ejecutando dentro de un contexto de solicitud ASP.Net?

Nota: Soy consciente de que ThreadStaticAttribute es un caso especial sin código funcional internamente y es verificado por el compilador JIT antes de que se explote su magia.