/// <summary> /// Types which implements ITransientType,IScopedType,ISingletonType interfaces, inject with proxygenerator automatically in this method. /// ProxySelector used AttributeBaseProxySelector as default. /// </summary> /// <param name="services"></param> /// <param name="option"></param> /// <returns></returns> public static IServiceCollection AutoBindWithInterceptors(this IServiceCollection services, Action <InterceptorOption> option = null) { using (InterceptorOptionBuilder builder = new InterceptorOptionBuilder()) { builder.BindWithInterceptors(services, option); return(services); } }
/// <summary> /// Types which implements ITransientType,IScopedType,ISingletonType interfaces, inject with proxygenerator automatically in this method. /// ProxySelector used with custom class. /// </summary> /// <typeparam name="TProxySelector"></typeparam> /// <param name="services"></param> /// <param name="option"></param> /// <returns></returns> public static IServiceCollection AutoBindWithInterceptors <TProxySelector>(this IServiceCollection services, Action <InterceptorOption> option = null) where TProxySelector : class, IProxySelector, new() { using (InterceptorOptionBuilder builder = new InterceptorOptionBuilder()) { builder.BindWithInterceptors <TProxySelector>(services, option); return(services); } }