Table of Contents

Class AssemblyExtensions

Namespace
DotEx.Reflections
Assembly
DotEx.dll

Extensions for Assembly.

public static class AssemblyExtensions
Inheritance
AssemblyExtensions
Inherited Members

Methods

GetDerivedTypes(Assembly, Type, bool)

Returns all derived types of the provided base type. Return abstract types if allowAbstract is true.

public static IEnumerable<Type> GetDerivedTypes(this Assembly assembly, Type baseType, bool allowAbstract)

Parameters

assembly Assembly

Assembly to search.

baseType Type

Base type to compare.

allowAbstract bool

Allow abstract derived types.

Returns

IEnumerable<Type>

Derived types of the base type.

GetDerivedTypes<T>(Assembly, bool)

Returns all derived types of the provided base type. Return abstract types if allowAbstract is true.

public static IEnumerable<Type> GetDerivedTypes<T>(this Assembly assembly, bool allowAbstract)

Parameters

assembly Assembly

Assembly to search.

allowAbstract bool

Allow abstract derived types.

Returns

IEnumerable<Type>

Derived types of the base type.

Type Parameters

T

Base type to compare.

GetTypesAndAttributes(Assembly, Type, bool)

Returns all types and their respective attributes in the assembly annotated with the given attribute. Return abstract types if allowAbstract is true.

public static IEnumerable<(Type Type, Attribute[] Attributes)> GetTypesAndAttributes(this Assembly assembly, Type attrType, bool allowAbstract = false)

Parameters

assembly Assembly

Assembly to search.

attrType Type

Attribute to match.

allowAbstract bool

Allow abstract types, false by default

Returns

IEnumerable<(Type Type, Attribute[] Attributes)>

Types with the given attribute defined, together with their respective attributes.

GetTypesAndAttributes<T>(Assembly, bool)

Returns all types and their respective attributes in the assembly annotated with the given attribute. Return abstract types if allowAbstract is true.

public static IEnumerable<(Type Type, T[] Attributes)> GetTypesAndAttributes<T>(this Assembly assembly, bool allowAbstract = false) where T : Attribute

Parameters

assembly Assembly

Assembly to search.

allowAbstract bool

Allow abstract types, false by default

Returns

IEnumerable<(Type Type, T[] Attributes)>

Types with the given attribute defined.

Type Parameters

T

Attribute to match.

GetTypesWithAttribute(Assembly, Type, bool)

Returns all types in the assembly annotated with the given attribute. Return abstract types if allowAbstract is true.

public static IEnumerable<Type> GetTypesWithAttribute(this Assembly assembly, Type attrType, bool allowAbstract = false)

Parameters

assembly Assembly

Assembly to search.

attrType Type

Attribute to match.

allowAbstract bool

Allow abstract types, false by default

Returns

IEnumerable<Type>

Types with the given attribute defined.

GetTypesWithAttribute<T>(Assembly, bool)

Returns all types in the assembly annotated with the given attribute. Return abstract types if allowAbstract is true.

public static IEnumerable<Type> GetTypesWithAttribute<T>(this Assembly assembly, bool allowAbstract = false) where T : Attribute

Parameters

assembly Assembly

Assembly to search.

allowAbstract bool

Allow abstract types, false by default

Returns

IEnumerable<Type>

Types with the given attribute defined.

Type Parameters

T

Attribute to match.