请问,如果我有这样一个类:
public interface IA
{
}
public abstract class B
{
}
public class C<IT> :B,IA where IT : T
{
}
现在我要在ConfigureServices里注入C这个类,应该怎么注入?
是这样吗?
service.AddScope(typeof(IA),typeof(C<>));
service.AddScope(typeof(C<>));
class IAImpl:IA{};
var instance=sp.getservice<C<IAImpl>>()
嗯.泛型要指定后才是一个类
可是按照我那样写会出错。
@luckylulu2018: 泛型要指定后才是一个类.你放个泛型模版进去.让他怎么去实例化..编译器又不算算命的.
对应你提问中假设的定义,可以这样注册
services.AddScoped(typeof(IA), typeof(C<D>));
services.AddScoped(typeof(B), typeof(C<D>));
services.AddScoped(typeof(C<>));