check if a .net core generic type implements another somewhere in its heirarchy code example
Example: c# check if type implements interface
typeof(IMyInterface).IsAssignableFrom(typeof(MyType))
// or
typeof(MyType).GetInterfaces().Contains(typeof(IMyInterface))
// or for a generic interface, it’s a bit different:
typeof(MyType).GetInterfaces().Any(i => i.IsGenericType && i.GetGenericTypeDefinition() == typeof(IMyInterface<>)