diff --git a/src/Cocona.Lite/Lite/CoconaLiteServiceCollectionExtensions.cs b/src/Cocona.Lite/Lite/CoconaLiteServiceCollectionExtensions.cs index 8a8b5d0..c8673b5 100644 --- a/src/Cocona.Lite/Lite/CoconaLiteServiceCollectionExtensions.cs +++ b/src/Cocona.Lite/Lite/CoconaLiteServiceCollectionExtensions.cs @@ -1,3 +1,5 @@ +using System.Diagnostics.CodeAnalysis; + namespace Cocona.Lite; public static class CoconaLiteServiceCollectionExtensions @@ -26,7 +28,11 @@ public static void AddTransient(this ICoconaLiteServiceCollection serv }, singleton: false); } - public static void AddTransient(this ICoconaLiteServiceCollection services) + public static void AddTransient(this ICoconaLiteServiceCollection services) where TImplementation : TService { services.AddDescriptor((provider, disposables) => @@ -41,7 +47,11 @@ public static void AddTransient(this ICoconaLiteServi }, singleton: false); } - public static void AddSingleton(this ICoconaLiteServiceCollection services) + public static void AddSingleton(this ICoconaLiteServiceCollection services) where TImplementation : TService { services.AddDescriptor((provider, disposables) => @@ -82,7 +92,11 @@ public static void TryAddTransient(this ICoconaLiteServiceCollection s } } - public static void TryAddTransient(this ICoconaLiteServiceCollection services) + public static void TryAddTransient(this ICoconaLiteServiceCollection services) where TImplementation : TService { if (services.All(x => x.ServiceType != typeof(TService))) @@ -91,7 +105,11 @@ public static void TryAddTransient(this ICoconaLiteSe } } - public static void TryAddSingleton(this ICoconaLiteServiceCollection services) + public static void TryAddSingleton(this ICoconaLiteServiceCollection services) where TImplementation : TService { if (services.All(x => x.ServiceType != typeof(TService)))