public AssemblyReflector(string[] filenames, ClassTypeFilter readThruFilter, ClassTypeFilter writeThruFilter) { _assembly = new AssemblyDef[filenames.Length]; LoadAssemblies(filenames); _readThruTypefilter = readThruFilter; _writeThruTypefilter = writeThruFilter; }
public bool HasBaseType(Type baseType) { TypeDefinition typeDefinition = (TypeDefinition)typeReference; if (typeDefinition != null) if (typeDefinition.BaseType != null) { string fullName = System.Reflection.Assembly.CreateQualifiedName(typeDefinition.BaseType.Scope.ToString(), typeDefinition.BaseType.FullName); Type bstype = Type.GetType(fullName, false); if (bstype == baseType) { return(true); } TypeDef typeDef = new TypeDef(typeDefinition.BaseType.Resolve()); var classTypeFilter = new ClassTypeFilter(baseType); return(classTypeFilter.FilterType(typeDef)); } }