我正在構建一組生成辦公室打開xml基礎報告的類庫,我使用的是靜態Windsor IoC容器。我怎樣纔能有一個Windsor IoC容器可以在我的班級之間共享,但不能在多個Web請求之間共享?
我的問題是,報告系統的一個可能入口點是通過Web前端,這意味着報告系統靜態IoC容器正在多個Web請求之間共享,導致對於每個新請求報告系統的異常嘗試重新註冊已在先前請求中註冊的Windsor組件。
我不想將註冊移動到web應用程序global.asax,因爲我的報告系統將不再是獨立的。
我怎樣纔能有一個Windsor IoC容器可以在我的報告類中共享,但不能在多個Web請求間共享?
請勿使用靜態服務定位器。這是一種反模式,你現在正在經歷一個固有的問題。這應該會導致你認真地重新考慮你的設計 - 也許在這個方向上:http://stackoverflow.com/questions/2045904/dependency-inject-di-friendly-library/2047657#2047657 – 2010-05-28 08:50:51