public static IDNTBuilder AddFluentModelValidation(this IDNTBuilder builder) { builder.Services.AddTransient(typeof(IModelValidator <>), typeof(FluentValidationModelValidator <>)); builder.Services.AddSingleton <IValidatorFactory, ServiceProviderValidatorFactory>(); return(builder); }
public static IDNTBuilder AddModelValidation(this IDNTBuilder builder) { Guard.ArgumentNotNull(builder, nameof(builder)); builder.Services.AddTransient <IMethodParameterValidator, ModelValidationMethodParameterValidator>(); return(builder); }
public static IDNTBuilder AddMemoryCache(this IDNTBuilder builder) { Guard.ArgumentNotNull(builder, nameof(builder)); builder.Services.AddMemoryCache(); builder.Services.AddSingleton <ICacheService, MemoryCacheService>(); return(builder); }
public static IDNTBuilder AddDataAnnotationValidation(this IDNTBuilder builder) { Guard.ArgumentNotNull(builder, nameof(builder)); builder.Services.AddTransient <IMethodParameterValidator, ValidatableObjectMethodParameterValidator>(); builder.Services.AddTransient <IMethodParameterValidator, DataAnnotationMethodParameterValidator>(); return(builder); }
public static IDNTBuilder AddTransactionOptions(this IDNTBuilder builder, Action <TransactionOptions> setupAction) { Guard.ArgumentNotNull(builder, nameof(builder)); Guard.ArgumentNotNull(setupAction, nameof(setupAction)); builder.Services.Configure(setupAction); return(builder); }
public static IDNTBuilder AddTransaction( this IDNTBuilder builder, Action <TransactionOptions> setupAction = null) { Guard.ArgumentNotNull(builder, nameof(builder)); builder.Services.AddTransient <TransactionInterceptor>(); builder.Services.AddScoped <ITransactionProvider>(provider => NullTransactionProvider.Instance); if (setupAction != null) { builder.Services.Configure(setupAction); } return(builder); }
public static IDNTBuilder AddAuditing( this IDNTBuilder builder, Action <AuditingOptions> setupAction = null) { Guard.ArgumentNotNull(builder, nameof(builder)); builder.Services.AddScoped <AuditingInterceptor>(); builder.Services.AddScoped <IAuditingHelper, AuditingHelper>(); builder.Services.AddScoped <IAuditingStore, DefaultAuditingStore>(); if (setupAction != null) { builder.Services.Configure(setupAction); } return(builder); }
public static IDNTBuilder AddModelValidation( this IDNTBuilder builder, Action <ValidationOptions> setupAction = null) { Guard.ArgumentNotNull(builder, nameof(builder)); builder.Services.AddTransient <ValidationInterceptor>(); builder.Services.AddTransient <MethodInvocationValidator>(); builder.Services.AddTransient <IMethodParameterValidator, DataAnnotationMethodParameterValidator>(); builder.Services.AddTransient <IMethodParameterValidator, ValidatableObjectMethodParameterValidator>(); builder.Services.AddTransient <IMethodParameterValidator, ModelValidationMethodParameterValidator>(); if (setupAction != null) { builder.Services.Configure(setupAction); } return(builder); }
public static IDNTBuilder AddFluentModelValidation(this IDNTBuilder builder) { builder.Services.AddTransient(typeof(IModelValidator <>), typeof(FluentValidationModelValidator <>)); return(builder); }