2011-05-19 50 views
5

我正在使用Ninject.Web庫與我們的Web窗體應用程序。除了現在我需要在用戶控件中注入依賴關係之外,它工作得很好。什麼是完成這個最好的方法? Ninject.Web不包含像Web服務,頁面和母版頁一樣的基類。Ninject.Web和用戶控件

回答

5

您可以爲用戶提供基本類控制自己:

public class NinjectedUserControl : System.Web.UI.UserControl 
{ 
    protected override void OnInit(EventArgs e) 
    { 
     base.OnInit(e); 
     RequestActivation(); 
    } 

    /// <summary> 
    /// Asks the kernel to inject this instance. 
    /// </summary> 
    protected virtual void RequestActivation() 
    { 
     KernelContainer.Inject(this); 
    } 
} 

我有Ninject.Web的源代碼在我的解決方案,我已經加入這個類來Ninject.Web(以便它可以訪問KernelContainer,這是內部的)。