From 3503f20255412aceb1c4d884d1bc010ae79a7d2a Mon Sep 17 00:00:00 2001 From: Sven Reichelt Date: Mon, 8 Jun 2020 11:36:32 +0200 Subject: [PATCH] Fixed type filtering in assembly extensions --- Oqtane.Shared/Extensions/AssemblyExtensions.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Oqtane.Shared/Extensions/AssemblyExtensions.cs b/Oqtane.Shared/Extensions/AssemblyExtensions.cs index 5b68bc76..74ae7070 100644 --- a/Oqtane.Shared/Extensions/AssemblyExtensions.cs +++ b/Oqtane.Shared/Extensions/AssemblyExtensions.cs @@ -35,14 +35,14 @@ namespace System.Reflection return assembly.GetTypes() //.Where(t => t.GetInterfaces().Contains(interfaceType)); - .Where(x => interfaceType.IsAssignableFrom(x) && !x.IsInterface && !x.IsAbstract); + .Where(x => !x.IsInterface && !x.IsAbstract && interfaceType.IsAssignableFrom(x)); } - + public static IEnumerable GetTypes(this Assembly assembly) { return assembly.GetTypes(typeof(T)); } - + public static IEnumerable GetInstances(this Assembly assembly) where T : class { if (assembly is null) @@ -51,7 +51,7 @@ namespace System.Reflection } var type = typeof(T); var list = assembly.GetTypes() - .Where(x => type.IsAssignableFrom(x) && !x.IsInterface && !x.IsAbstract && !x.IsGenericType); + .Where(x => !x.IsInterface && !x.IsAbstract && !x.IsGenericType && type.IsAssignableFrom(x)); foreach (var type1 in list) {