2013-02-08 44 views
0

我有一個類NinjectNinject - 基本使用

但我不知道Ninject這麼高。

爲什麼總是要輸入這個方法?

protected override IController GetControllerInstance(
    System.Web.Routing.RequestContext requestContext, 
    System.Type controllerType) 
{ 
    return controllerType == null 
    ? null 
    : (IController)ninjectKernel.Get(controllerType); 
} 
+1

你試過谷歌嗎? – IronMan84 2013-02-08 20:32:42

+1

真正的鐵人會說這樣的話。 – 2013-02-08 22:45:16

回答

1

Ninject是一個IOC (Inversion of Control)包。

您總是打字的代碼要求Ninject容器找到指定類型的控制器。

+1

值得一提的是,儘管Ninject是IOC,但使用'.Get'實際上與IOC相反 - 它使用Ninject作爲服務定位器。 (儘管大概這是一個低級別的一次性的地方,在這種情況下會引發注入) – 2013-02-09 02:44:02