public override IFrameworkContainer RegisterType <TContract>(Type implementType, LifetimeFlag flag)
        {
            var lifetime = LifetimeMapping.GetLifetimeObject(flag);

            ContainerObject.Register(Component.For <TContract>().ImplementedBy(implementType).LifeStyle.Custom(lifetime));
            return(this);
        }
        public override IFrameworkContainer RegisterInstance <TContract>(string key, TContract @object, LifetimeFlag flag)
        {
            var lifetime = LifetimeMapping.GetLifetimeObject(flag);

            ContainerObject.Register(Component.For <TContract>().Instance(@object).LifeStyle.Custom(lifetime).Named(key));
            return(this);
        }