/// <summary> /// Ajoute les services nécessaires à la mise en oeuvre des Web API Action Logement Services. /// </summary> /// <param name="services">La <see cref="IServiceCollection"></see> à laquelle ajouter ce service.</param> /// <param name="configuration">La collection des clés de configuration.</param> /// <returns>Une référence <see cref="IMvcBuilder" /> qui peut être utilisée pour ajouter d'autres services.</returns> public static IServiceCollection AddWebApiServices(this IServiceCollection services, IConfiguration configuration) { services .AddSingleton <IEnsureConfiguration, EnsureConfiguration>() .AddSingleton(InitMonitoring(configuration)) .AddAndConfigureCors() .AddAndConfigureAuthentication(configuration) .AddMvc() .SetCompatibilityVersion(CompatibilityVersion.Version_2_2) .AddFluentValidation(fv => { fv.RunDefaultMvcValidationAfterFluentValidationExecutes = false; }); IServiceProvider provider = services.BuildServiceProvider(); IEnsureConfiguration ensuredConfiguration = provider.GetRequiredService <IEnsureConfiguration>(); var authorizationService = new ResourceAuthorizationService(ensuredConfiguration); services.AddSingleton <IResourceAuthorizationService>(authorizationService); services.AddSingleton <IResourceAuthorizationCacheService>(authorizationService); return(services.AddApiVersioning()); }
/// <summary> /// Crée une instance de <see cref="CommunRepository"/> avec la configuration spécifiée. /// </summary> /// <param name="configuration">La configuration du <see cref="CommunRepository"/></param> public CommunRepository(IEnsureConfiguration configuration) { _connectionString = configuration.GetConnectionString(ConnectionStringName); }
/// <summary> /// Crée une instance de <see cref="ResourceAuthorizationService"/> avec la configuration spécifiée. /// </summary> /// <param name="configuration">La configuration du <see cref="ResourceAuthorizationService"/></param> public ResourceAuthorizationService(IEnsureConfiguration configuration) { _connectionString = configuration.GetConnectionString(ConnectionStringName); }