スレッド上でも Current HttpContext を使用するために、Structuremap を使用してクラスを構成しようとしています。
私はこのクラスを持っています
public class SiteContext
{
public SiteContext(HttpContextBase context)
{
HttpContext = context;
}
public HttpContextBase HttpContext { get; private set; }
}
BootStrapper クラスで以下を使用すると、システムは HttpContext.Current を取得しようとすると例外をスローします。[HttpContext が null です]
For<SiteContext>()
.HybridHttpOrThreadLocalScoped()
.Use(() => new SiteContext(new HttpContextWrapper(HttpContext.Current)));
一方、次を使用すると、null のセッションとは対照的に HttpContext.Current を取得できます。
For<SiteContext>()
.HttpContextScoped()
.Use<SiteContext>()
.Ctor<HttpContextBase>("context")
.Is(new HttpContextWrapper(HttpContext.Current));
編集
For<HttpContextBase>()
.HttpContextScoped()
.Use(() => new HttpContextWrapper(HttpContext.Current));
スレッド上で HttpContext.Current を使用する方法はありますか?
コメントをいただければ幸いです。
ありがとう