Asp.net 无法使用泛型注册vNext DI服务

Asp.net 无法使用泛型注册vNext DI服务,asp.net,asp.net-mvc,dependency-injection,asp.net-core,Asp.net,Asp.net Mvc,Dependency Injection,Asp.net Core,在迁移到aspnet5/vNext之前,我使用了SimpleInjector。我可以使用SimpleInjector注册所有的通用验证器,方法如下: services.AddScoped(typeof(IValidator<>), new List<Assembly> { Assembly.Load("MY.OTHER.ASSEMBLY") }); services.AddScoped(typeof(IValidator),新列表{Assembly.Load(“MY.O

在迁移到aspnet5/vNext之前,我使用了SimpleInjector。我可以使用SimpleInjector注册所有的通用验证器,方法如下:

services.AddScoped(typeof(IValidator<>), new List<Assembly> { Assembly.Load("MY.OTHER.ASSEMBLY") });
services.AddScoped(typeof(IValidator),新列表{Assembly.Load(“MY.OTHER.Assembly”)});
我的类在另一个程序集中的定义如下

public interface IMyInterface : IValidator<MyObject> {}

public class MyValidator : IMyInterface
{
   // Methods here
}
公共接口IMyInterface:IValidator{}
公共类MyValidator:IMyInterface
{
//这里的方法
}

使用标准的vNext DI系统可以做到这一点吗?

是的,可以做到。看看这里:

这篇文章不错,但它依赖于您在所有类上设置自定义属性。如果不实现一个属性,您就不能这样做吗?我知道你可以在AutoFac中注册,但我不想在ASP.NET 5中包含使用1个函数的DI框架。我总是手动注册所有内容,一类一类地注册。你会有多少这样的代码“注册行”?5.10? 20? 即使是20,你也可以简单地把它放在单独的方法中,仍然是“干净的”。