diff --git a/TransactionProcessor.Mobile/Extensions/MauiAppBuilderExtensions.cs b/TransactionProcessor.Mobile/Extensions/MauiAppBuilderExtensions.cs index cf794de8..9e21b653 100644 --- a/TransactionProcessor.Mobile/Extensions/MauiAppBuilderExtensions.cs +++ b/TransactionProcessor.Mobile/Extensions/MauiAppBuilderExtensions.cs @@ -84,6 +84,10 @@ public static MauiAppBuilder ConfigureAppServices(this MauiAppBuilder builder) { builder.Services.AddSingleton(); builder.Services.AddSingleton(); builder.Services.AddSingleton(); + builder.Services.AddSingleton(); + builder.Services.AddSingleton(); + builder.Services.AddSingleton(); + builder.Services.AddSingleton(); builder.RegisterConfigurationService().RegisterAuthenticationService().RegisterTransactionService().RegisterMerchantService(); builder.Services.RegisterHttpClientX(); @@ -106,8 +110,8 @@ private static MauiAppBuilder RegisterConfigurationService(this MauiAppBuilder b builder.Services.AddSingleton>(serviceProvider => useTrainingMode => { return useTrainingMode switch { - true => new TrainingConfigurationService(), - _ => serviceProvider.GetService() + true => serviceProvider.GetRequiredService(), + _ => serviceProvider.GetRequiredService() } ?? throw new InvalidOperationException("Failed to resolve IConfigurationService."); }); return builder; @@ -118,8 +122,8 @@ private static MauiAppBuilder RegisterAuthenticationService(this MauiAppBuilder builder.Services.AddSingleton>(serviceProvider => useTrainingMode => { return useTrainingMode switch { - true => new TrainingAuthenticationService(), - _ => serviceProvider.GetService() + true => serviceProvider.GetRequiredService(), + _ => serviceProvider.GetRequiredService() } ?? throw new InvalidOperationException("Failed to resolve IConfigurationService."); }); return builder; @@ -130,8 +134,8 @@ private static MauiAppBuilder RegisterTransactionService(this MauiAppBuilder bui { return useTrainingMode switch { - true => new TrainingTransactionService(), - _ => serviceProvider.GetService() + true => serviceProvider.GetRequiredService(), + _ => serviceProvider.GetRequiredService() } ?? throw new InvalidOperationException("Failed to resolve ITransactionService."); }); return builder; @@ -143,8 +147,8 @@ private static MauiAppBuilder RegisterMerchantService(this MauiAppBuilder builde { return useTrainingMode switch { - true => new TrainingMerchantService(), - _ => serviceProvider.GetService() + true => serviceProvider.GetRequiredService(), + _ => serviceProvider.GetRequiredService() } ?? throw new InvalidOperationException("Failed to resolve ITransactionService."); }); return builder;