3

我是使用 ninject 2.0 的新手。我的应用程序托管在 asp.net mvc 中。

现在我不知道如何访问在我的类库中创建的内核。

我想我应该在 global.aspx 中创建内核并在其中加载所有模块。但是我怎样才能使它在整个应用程序中可用?

    protected void Application_Start()
    {
        RegisterRoutes(RouteTable.Routes);

        IKernel kernel = new StandardKernel(new ServiceModule());
    }

上面创建的内核应该去哪里?以及如何访问它?

4

1 回答 1

2

查看Ninject Dojo 的Ninject.Web.Mvc 扩展部分。这将向您展示管理此类事情的默认模式(去看看源代码)。

您可以按原样使用它(大多数人都这样做),也可以根据自己的喜好对其进行自定义。

您还用 CSL 标记了它。在您使用 Ninject 作为服务位置之前,请搜索一下为什么这被视为反模式(默认情况下引用的扩展不会Kernel公开Global- 您必须自己添加一个public属性(但是 WCF 集成在另一只手做)

于 2010-07-12T11:43:50.210 回答