绑定装配中的默认接口,ASP NET vNext依赖注入

时间:2016-02-01 18:35:15

标签: c# asp.net asp.net-core

在带有Ninject的ASP Net 4中,为了将接口映射到默认类(即IMyClass到MyClass),我可以执行以下操作:

kernel.Bind(x =>
        {
            x.FromAssemblyContaining<ILibraryMarker>()
             .SelectAllClasses()
             .BindDefaultInterface();
        });

我无法弄清楚如何在ASP NET vNext中执行此操作,因为它有自己的IoC。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

不幸的是,ASP.NET 5 DI无法实现这一点。您必须明确注册所有服务。像这样:

services.AddScoped<ILibraryMarker, LibraryMarker>();

请参阅可能能为您提供帮助的https://github.com/aspnet/DependencyInjection/issues/322

对于历史价值,Ninject被收录到beta6 here,但此后一直没有更新或发布。也许这可能是某人接管的主动权?

我希望这会有所帮助。