用3个参数注册泛型类的方法是什么

public interface ITest<T,V,VE>
{

}

public class TestRespository<T,V,VE>:ITest<T,V,VE>
{

}


我已经这样注册

services.AddScoped(typeof(ITest<,,>), typeof(ITest<,,>));


但是无法进入构造器以及

service.GetService(typeof(ITest<TestClass, vTestClass, VETestClass>)) as ITest<TestClass, vTestClass, VETestClass>;

最佳答案

问题出在AddScoped()方法的调用上。您应该在第二个参数中传递实现的类型,而不是接口本身的类型:

services.AddScoped(typeof(ITest<,,>), typeof(TestRespository<,,>));

09-11 18:58