2
因此,我在做基於.NET MVC 3的應用程序並將Castle Windsor用作IOC容器。在HTML幫助程序中使用Castle Windsor的依賴注入
我使用它沒有任何問題,工作得很好。現在我遇到過這種情況,我創建的HTML幫助其暴露的方法
public static string GetContentByKey(string key)
{
//I need to use a service that is resolved by Windsor here
}
的問題是,在這個Helper類,我需要使用通過溫莎初始化的服務,但因爲這個助手是一個靜態方法那裏你沒有建設者注入的選擇。
這種問題表明您嘗試使用錯誤的方法。也許你應該退後一步,重新考慮你想要做的事情。 –
我同意塞巴斯蒂安。如果一個類需要依賴關係,那麼它可能不僅僅是一個'幫助者'類。像對待其他服務一樣進行設計。換句話說:不要將其設爲靜態,並定義一個採用所有依賴關係的公共構造函數。 – Steven