/// <summary> /// Uses the Autofac. /// </summary> /// <param name="builder">The builder.</param> /// <param name="delegate">The container.</param> /// <returns>IHostBuilder.</returns> public static ConventionContextBuilder ConfigureAutofac(this ConventionContextBuilder builder, Action <ContainerBuilder> @delegate) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } builder.AppendDelegate(new AutofacConvention((context, configuration, services, container) => @delegate(container))); return(builder); }
/// <summary> /// Uses the Autofac. /// </summary> /// <param name="builder">The builder.</param> /// <param name="delegate">The container.</param> /// <returns>IHostBuilder.</returns> public static ConventionContextBuilder ConfigureAutofac(this ConventionContextBuilder builder, AutofacConvention @delegate) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } builder.AppendDelegate(@delegate); return(builder); }
/// <summary> /// Uses the DryIoc. /// </summary> /// <param name="builder">The builder.</param> /// <param name="delegate">The container.</param> /// <returns>IHostBuilder.</returns> public static ConventionContextBuilder ConfigureDryIoc([NotNull] this ConventionContextBuilder builder, Func <IServiceCollection, IContainer, IContainer> @delegate) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } builder.AppendDelegate(new DryIocConvention((context, configuration, services, container) => @delegate(services, container))); return(builder); }
/// <summary> /// Configure the serilog delegate to the convention scanner /// </summary> /// <param name="container">The container.</param> /// <param name="delegate">The delegate.</param> /// <returns>IConventionHostBuilder.</returns> public static ConventionContextBuilder ConfigureOpenTelemetryTracing(this ConventionContextBuilder container, OpenTelemetryTracingConvention @delegate) { if (container == null) { throw new ArgumentNullException(nameof(container)); } if (@delegate == null) { throw new ArgumentNullException(nameof(@delegate)); } container.AppendDelegate(@delegate); return(container); }
/// <summary> /// Configure the serilog delegate to the convention scanner /// </summary> /// <param name="builder">The builder.</param> /// <param name="delegate">The delegate.</param> /// <returns>IHostBuilder.</returns> public static ConventionContextBuilder ConfigureSerilog( [NotNull] this ConventionContextBuilder builder, [NotNull] Action <LoggerConfiguration> @delegate ) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (@delegate == null) { throw new ArgumentNullException(nameof(@delegate)); } return(builder.AppendDelegate(new SerilogConvention((_, _, loggerConfiguration) => @delegate(loggerConfiguration)))); }
/// <summary> /// Configure the serilog delegate to the convention scanner /// </summary> /// <param name="builder">The builder.</param> /// <param name="delegate">The delegate.</param> /// <returns>IHostBuilder.</returns> public static ConventionContextBuilder ConfigureSerilog( [NotNull] this ConventionContextBuilder builder, [NotNull] SerilogConvention @delegate ) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (@delegate == null) { throw new ArgumentNullException(nameof(@delegate)); } return(builder.AppendDelegate(@delegate)); }