首页 > 代码库 > 反射_获取类的信息
反射_获取类的信息
通过C#中的type类获取类中的字段、属性、方法等相关信息。
/// <summary> /// 通过type类获取类中的公有字段,属性和方法 /// </summary> /// class newClass { public string Id01; public string Id02; public string Id03; public string Name01 { get; set; } public string Name02 { get; set; } public string Name03 { get; set; } public void Method01() { } public void Method02() { } public void Method03() { } } class Program { static void Main(string[] args) { newClass testClass = new ReflectionTest01.newClass(); testClass.Id01 = "01"; testClass.Id02 = "02"; testClass.Id03 = "03"; testClass.Name01 = "name01"; testClass.Name02 = "name02"; testClass.Name03 = "name03"; Type type = testClass.GetType(); //获取基本属性 //获取类名 Console.WriteLine(type.Name); //获取命名空间 Console.WriteLine(type.Namespace); //获取命名空间 Console.WriteLine(type.Assembly); //获取public的字段 FieldInfo[] fields = type.GetFields(); foreach(FieldInfo info in fields) { Console.Write(info.Name+" "); Console.Write(info.GetValue(testClass)+ " "); } Console.WriteLine(); //获取属性 PropertyInfo[] props = type.GetProperties(); foreach (PropertyInfo info in props) { Console.Write(info.Name + " "); Console.Write(info.GetValue(testClass)+ " ");//获取对应的值 } Console.WriteLine(); //获取方法 MethodInfo[] methods = type.GetMethods(); foreach (MethodInfo info in methods) { Console.Write(info.Name + " "); } Console.WriteLine(); Console.ReadKey(); } }
可以通过EventInfo[] events=type.GetEvents();获取类的事件。
反射_获取类的信息
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。