C# 确定类型是否用于子类

C# 确定类型是否用于子类,c#,reflection,C#,Reflection,我有一个Linq代码,它枚举程序集中的所有类,并将它们放入Type对象数组中,以便将其作为AdditionalTypes参数传递给XML序列化程序。我需要过滤该数组的内容,以便它只包含从特定基类派生的类 如何从类型对象确定该类是基类的后代?您可能正在查找或。但是,在这两种情况下,随着关系变得更加复杂,如果泛型发挥作用,您需要非常仔细地考虑。您可能正在寻找或。但是,在这两种情况下,如果泛型发挥作用,你需要非常仔细地考虑,因为关系变得更加复杂。类似的事情可能会让你达到你需要的程度 AppDomain

我有一个Linq代码,它枚举程序集中的所有类,并将它们放入
Type
对象数组中,以便将其作为
AdditionalTypes
参数传递给XML序列化程序。我需要过滤该数组的内容,以便它只包含从特定基类派生的类


如何从
类型
对象确定该类是基类的后代?

您可能正在查找或。但是,在这两种情况下,随着关系变得更加复杂,如果泛型发挥作用,您需要非常仔细地考虑。

您可能正在寻找或。但是,在这两种情况下,如果泛型发挥作用,你需要非常仔细地考虑,因为关系变得更加复杂。

类似的事情可能会让你达到你需要的程度

AppDomain.CurrentDomain.GetAssemblies()
                     .SelectMany(x => x.GetTypes())
                     .Where(x => typeof(MyBaseType).IsAssignableFrom(x))
                     .ToArray();

像这样的事情可能会让你到达你需要的地方

AppDomain.CurrentDomain.GetAssemblies()
                     .SelectMany(x => x.GetTypes())
                     .Where(x => typeof(MyBaseType).IsAssignableFrom(x))
                     .ToArray();

IsSubclassOf
方法正是我所需要的。此时类型树中没有泛型。我需要的是
IsSubclassOf
方法。此时类型树中没有泛型。