private static Func <object> GetResolveMethod(Type type, IApplicationHost applicationHost)
        {
            var interfaceMethod = typeof(IApplicationHost).GetMethod(nameof(IApplicationHost.Resolve));
            var interfaceMap    = applicationHost.GetType().GetInterfaceMap(typeof(IApplicationHost));

            var implementationMethodIndex = Array.IndexOf(interfaceMap.InterfaceMethods, interfaceMethod);

            return(() => interfaceMap.TargetMethods[implementationMethodIndex]
                   .MakeGenericMethod(type)
                   .Invoke(applicationHost, null));
        }