private object CreateInstance(Type mappedType, DependencyResolverScope scope) { var constructor = mappedType.GetConstructors(BindingFlags.Public | BindingFlags.Instance); object instance; if (constructor.Length == 0) { instance = Activator.CreateInstance(mappedType); } else { var parameters = constructor[0].GetParameters(); object[] paramInstances = new object[parameters.Length]; for (int i = 0; i < parameters.Length; i++) { paramInstances[i] = GetScopedOrGlobalService(scope, parameters[i].ParameterType); } instance = constructor[0].Invoke(paramInstances); } return(instance); }
public DependencyResolverScope(DependencyResolverContext context) { this.context = context; }