/// <summary> /// Creates an object. /// </summary> /// <param name="resolver">The resolver.</param> /// <param name="context">The context.</param> /// <returns>The created object.</returns> private static object CreateObject(IIoCResolver resolver, CreateObjectContext context) { object[] parameters = context.ConstructorArguments .Select(type => resolver.Resolve(type)) .ToArray(); return(context.Constructor.Invoke(parameters)); }
/// <summary> /// Resolves an objects. /// </summary> /// <typeparam name="TObject">The type of the object to resolve.</typeparam> /// <returns>The resolved object.</returns> public static TObject Resolve <TObject>(this IIoCResolver resolver) { return((TObject)resolver.Resolve(typeof(TObject))); }