public void RegisterType(Type interfaceType, Type constructType) { IResolver resolver = null; if (interfaceType.GetTypeInfo().IsGenericTypeDefinition) { resolver = new ConstructingOpenGenericResolver(constructType, this); } else { resolver = new ConstructingResolver(constructType, this); } InternalSetResolver(interfaceType, resolver); }
public void RegisterType(Type tFrom, Type tTo) { IResolver resolver = null; if (tFrom.GetTypeInfo().IsGenericTypeDefinition) { resolver = new ConstructingOpenGenericResolver(tTo, this); } else { resolver = new ConstructingResolver(tTo, this); } InternalSetResolver(tFrom, resolver); }
public void RegisterType <TInterface, TToConstruct>() where TInterface : class where TToConstruct : class, TInterface { var interfaceType = typeof(TInterface); var constructType = typeof(TToConstruct); IResolver resolver; if (interfaceType.GetTypeInfo().IsGenericTypeDefinition) { resolver = new ConstructingOpenGenericResolver(constructType, this); } else { resolver = new ConstructingResolver(constructType, this); } InternalSetResolver(interfaceType, resolver); }