2012-01-13 19 views
0

有點奇怪的情況:我正在開發一個ASP.NET MVC 3應用程序,它使用Autofac作爲它的IoC容器,並且可以將它放到任何現有的MVC或WebForms應用程序中。兩個Autofac容器在單個webrequest中競爭

一切正常,除非另一個應用程序也使用Autofac。我創建了一個自定義的DependencyResolver包裝器,它將我的應用程序的AutofacDependencyResolver與其他應用程序的DependencyReolver.Current結合在一起(設置時)。雖然我可以在調試器中看到所有內容都已正確註冊,但解決組件問題有時會失敗。

我懷疑這兩個內部解析器都在爭奪HttpContext.Items集合中的一個位置,但我無法得到我的手指落後於確切的問題。

什麼是正確的方法來處理這種情況?

+0

您可能需要提供一些關於您的一些自定義代碼的附加細節以及如何設置。 Web是否使用DependencyResolver構建應用程序?當你說你有一個「使用Autofac的MVC 3應用程序...可以放入任何現有的」應用程序,到底究竟是什麼「放入」以及在哪裏? – 2012-01-13 19:31:25

回答

1

您可以將配置隔離到模塊中。將一個應用程序集成到另一個應用程序時,註冊該模塊。