18、.NET 中的反射与自定义属性深入解析

.NET 中的反射与自定义属性深入解析

1. 反射类型层次结构

在获取到 Type 实例后,我们可以遍历应用程序的层次结构。通过代表成员、模块、程序集、命名空间、 AppDomain 和嵌套类型的类型来访问元数据。还能检查元数据和自定义属性,创建类型的新实例以及调用成员。

以下是一个使用反射显示三种不同类型成员的示例代码:

using System;
using System.Reflection;
class Test {
  static void Main() {
    object o = new Object();
    DumpTypeInfo(o.GetType());
    DumpTypeInfo(typeof(int));
    DumpTypeInfo(Type.GetType("System.String"));
  }
  static void DumpTypeInfo(Type t) {
    Console.WriteLine("Type: {0}", t);

    // 检索类型中的成员列表
    MemberInfo[] miarr = t.GetMembers();

    // 打印每个成员的详细信息
    foreach (MemberInfo mi in miarr)
      Console.WriteLine("  {0}={1}", mi.MemberType, mi);
  }
}

这个示例展示了如何使用反射来获取和显示不同类型的成员信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值