36 lines
1.4 KiB
C#
36 lines
1.4 KiB
C#
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.DependencyInjection.Extensions;
|
|
using SQLVision.Core.Interfaces;
|
|
using SQLVision.Services.Exporters;
|
|
using SQLVision.Services.Parsers;
|
|
using SQLVision.Services.Services;
|
|
|
|
namespace SQLVision.Services;
|
|
|
|
public static class ServiceExtensions
|
|
{
|
|
public static IServiceCollection AddSqlVisionServices(this IServiceCollection services)
|
|
{
|
|
// Регистрация парсера
|
|
services.TryAddSingleton<ISqlScriptParser, SqlScriptParser>();
|
|
|
|
// Регистрация сервиса выполнения SQL
|
|
services.TryAddSingleton<ISqlExecutionService, SqlExecutionService>();
|
|
|
|
// Регистрация менеджера скриптов
|
|
services.TryAddSingleton<IScriptManager, ScriptManager>();
|
|
|
|
// Регистрация сервиса экспорта
|
|
services.TryAddSingleton<IExportService, ExportService>();
|
|
|
|
// Регистрация менеджера плагинов
|
|
services.TryAddSingleton<IPluginManager, PluginManager>();
|
|
|
|
// Регистрация экспортеров
|
|
services.TryAddSingleton<IExportHandler, ExcelExporter>();
|
|
services.TryAddSingleton<IExportHandler, CsvExporter>();
|
|
services.TryAddSingleton<IExportHandler, JsonExporter>();
|
|
|
|
return services;
|
|
}
|
|
} |