我在我的MVC 3.0應用程序中使用castle windsor 3.1.0.0進行依賴注入。Castle Windsor 3.1 PerWebRequestLifestyleModule配置
我的容器是設置提供的控制器是這樣的:
container.Register(Classes.FromThisAssembly().BasedOn<IController>().LifestylePerWebRequest());
這似乎是工作,因爲我看到每個請求創建一個新的控制器實例。然而根據documenation:http://docs.castleproject.org/Windsor.LifeStyles.ashx,我也必須把這個在我的web.config:
<httpModules>
<add name="PerRequestLifestyle" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.Windsor"/>
</httpModules>
,我沒有。如果這個模塊缺失,Castle Windsor的行爲是什麼? (文檔中說,爲了使每個Web請求正常運行,您必須在您的Web配置中具有此功能)。
這確實是這樣的情況:http://stackoverflow.com/questions/18576350/perwebrequest-and-transient-lifestyles –