Skip to content

Commit 1dff356

Browse files
author
Kamil Zakiev
committed
added open generic support for decorator func
1 parent 5df6b40 commit 1dff356

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

src/Scrutor/ServiceCollectionExtensions.Decoration.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,16 @@ private static bool IsSameGenericType(Type t1, Type t2)
258258
return t1.IsGenericType && t2.IsGenericType && t1.GetGenericTypeDefinition() == t2.GetGenericTypeDefinition();
259259
}
260260

261+
private static IServiceCollection DecorateOpenGeneric(this IServiceCollection services, Type serviceType, Func<object, IServiceProvider, object> decorator)
262+
{
263+
if (services.TryDecorateOpenGeneric(serviceType, decorator))
264+
{
265+
return services;
266+
}
267+
268+
throw new MissingTypeRegistrationException(serviceType);
269+
}
270+
261271
private static bool TryDecorateOpenGeneric(this IServiceCollection services, Type serviceType, Type decoratorType)
262272
{
263273
bool TryDecorate(Type[] typeArguments)

0 commit comments

Comments
 (0)