using EgwCoreLib.Lux.Data.Repository.Config; using EgwCoreLib.Lux.Data.Repository.Cost; using EgwCoreLib.Lux.Data.Repository.Items; using EgwCoreLib.Lux.Data.Repository.Job; using EgwCoreLib.Lux.Data.Repository.Production; using EgwCoreLib.Lux.Data.Repository.Sales; using EgwCoreLib.Lux.Data.Repository.Stats; using EgwCoreLib.Lux.Data.Repository.Utils; using EgwCoreLib.Lux.Data.Services; using EgwCoreLib.Lux.Data.Services.Config; using EgwCoreLib.Lux.Data.Services.Cost; using EgwCoreLib.Lux.Data.Services.Items; using EgwCoreLib.Lux.Data.Services.Job; using EgwCoreLib.Lux.Data.Services.Production; using EgwCoreLib.Lux.Data.Services.Sales; using EgwCoreLib.Lux.Data.Services.Stats; using EgwCoreLib.Lux.Data.Services.Utils; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; namespace EgwCoreLib.Lux.Data { public static class DataServiceCollectionExtensions { public static IServiceCollection AddLuxData(this IServiceCollection services, string connectionString) { //// DbContextFactory: preferibile in Blazor Server e scenari concorrenti //services.AddDbContextFactory(options => // options.UseMySql(connectionString, ServerVersion.AutoDetect(connectionString))); // Repository con interfaccia services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); // Servizi dati con interfaccia services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); services.TryAddScoped(); // Facade / DataLayerService //builder.Services.AddSingleton(); services.TryAddScoped(); //services.TryAddScoped(); // aggiunta servizi finali Singleton... //services.TryAddSingleton(); return services; } } }