我正在Global Application_Start事件中构建一个Unity容器,然后将它存放在一个静态变量中,然后通过GLobal类实现的接口上的方法全局可用,然后可以正确地转换为HttpContext.Current.ApplicationInstance,适用于一段时间。当应用程序池回收时,静态变量被清除,Application_Start事件似乎没有被重新执行,并且容器没有它开始的任何注册。
还有其他人遇到过这个问题吗?并能够解决它?
答案 0 :(得分:1)
我猜您使用的是经典的ASP.NET Web表单。在这种情况下,我会主张使用HttpApplicationState
(可通过HttpContext.Current.Application
)来存储容器。
查看对Chris Tavares对this question的回答的评论。克里斯是Unity的主要维护者。他知道他在说什么。