public static IGenericServiceContainer AddTransient <TService, TImplementation>(this IGenericServiceContainer services)
     where TService : class
     where TImplementation : class, TService
 {
     services.RegisterTransient <TService, TImplementation>();
     return(services);
 }
 public static IGenericServiceContainer AddTransient(this IGenericServiceContainer services, Type serviceType, Func <object> factory)
 {
     services.RegisterTransient(serviceType, factory);
     return(services);
 }
 public static IGenericServiceContainer AddTransient <TService>(this IGenericServiceContainer services, Func <TService> factory)
     where TService : class
 {
     services.RegisterTransient <TService>(factory);
     return(services);
 }
 public static IGenericServiceContainer AddTransient(this IGenericServiceContainer services, Type serviceType, Type implementationType)
 {
     services.RegisterTransient(serviceType, implementationType);
     return(services);
 }