List<IEnumerable<Type>> list = >> (from m in Assembly.Load(Assemblyname).GetModules() select m.GetTypes().Where(x => x.IsClass)).ToList(); >> >>foreach ( IEnumerable<Type> t in list) >> { >> foreach (Type className in t) >> { >> Console.WriteLine("{0}", className.FullName); >> } >> }>
public static List<Type> GetAssemblyClasses(string assemblyName) { var assembly = Assembly.Load(assemblyName); List<Type> classList = new List<Type>(); foreach (var module in assembly.GetModules()) { classList.AddRange(from x in module.GetTypes().Where(x => x.IsClass) select x); } return classList; }