Csharp/C Sharp/Reflection/Event
Версия от 15:31, 26 мая 2010; (обсуждение)
Show Events
using System;
using System.Reflection;
class MainClass {
public static void ShowEvents(Type t) {
EventInfo[] events = t.GetEvents();
Console.WriteLine("Implemented Events");
foreach (EventInfo e in events) {
Console.WriteLine("Event name: {0}", e.Name);
Console.WriteLine("Multicast: {0}", e.IsMulticast ? "Yes" : "No");
Console.WriteLine("Member Type {0}", e.MemberType.ToString());
}
}
public static void ShowTypes(string name, Assembly assembly) {
Type[] typeArray = assembly.GetTypes();
Console.WriteLine("Assembly Name: {0}", name);
foreach (Type type in typeArray) {
if (type.IsClass) {
ShowEvents(type);
}
}
}
public static void Main(string[] args) {
for (int i = 0; i < args.Length; ++i) {
// Get the assemble object (from System.Reflection)
Assembly assembly = Assembly.LoadFrom(args[0]);
ShowTypes(args[0], assembly);
}
}
}