feat(DependencyInjection): Verbesserung von DI und Konfigurationsmanagement

DependencyInjection wurde aktualisiert, um IConfiguration zu akzeptieren, appsettings.json für Konfigurationseinstellungen hinzugefügt und Projektreferenzen in der .csproj-Datei geändert. Program.cs wurde angepasst, um die neue Konfigurationsstruktur für die Dienstregistrierung zu nutzen.
This commit is contained in:
Developer 02
2025-04-14 11:38:21 +02:00
parent 160005e230
commit 927b89554d
4 changed files with 230 additions and 2 deletions

View File

@@ -2,15 +2,20 @@
using CommandDotNet;
using Microsoft.Extensions.DependencyInjection;
using CommandDotNet.IoC.MicrosoftDependencyInjection;
using EnvelopeGenerator.Infrastructure;
using EnvelopeGenerator.Application.Extensions;
using Microsoft.Extensions.Configuration;
namespace EnvelopeGenerator.Terminal;
public static class DependencyInjection
{
public static IServiceCollection AddCommandManagerRunner(this IServiceCollection services, Case @case = Case.KebabCase)
public static IServiceCollection AddCommandManagerRunner(this IServiceCollection services, IConfiguration configuration, Case @case = Case.KebabCase)
{
return services
.AddSingleton<CommandManager>()
.AddEnvelopeGeneratorRepositories()
.AddEnvelopeGeneratorServices(configuration)
.AddSingleton(sp =>
{
var runner = new AppRunner<CommandManager>();