📜  C#| Type.GetMember()方法(1)

📅  最后修改于: 2023-12-03 14:40:29.607000             🧑  作者: Mango

C# -- Type.GetMember()方法

在C#中,Type.GetMember()方法可用于查找类型中定义的成员(字段、方法、属性等)。本文将详细介绍Type.GetMember()方法的用法。

语法
MemberInfo[] GetMember(string name, BindingFlags bindingAttr);

其中,

  • name:要查找的成员名称
  • bindingAttr:限制使用反射时要考虑的成员的范围与方式。默认值为Public | Instance。
返回值

GetMember方法返回一个MemberInfo类型的数组,其中包含与指定名称匹配的所有成员信息。如果没有匹配项,则返回一个长度为0的数组。

用法示例
using System;
using System.Reflection;

public class Example
{
    public static void Main()
    {
        Type myType = typeof(MyClass);
        MemberInfo[] myMemberInfoArray = myType.GetMember("myMethod");
        Console.WriteLine("Number of members matching the search string: {0}.", myMemberInfoArray.Length);
        for (int i = 0; i < myMemberInfoArray.Length; i++)
        {
            Console.WriteLine("Member {0}: {1}", i, myMemberInfoArray[i].ToString());
        }
    }
}

public class MyClass
{
    public void myMethod(int i)
    {
        Console.WriteLine(i);
    }
}

在上面的示例中,先获取MyClass类型的Type实例,然后将要查找的成员名称传递给GetMember方法,并获取到所有匹配的成员信息。最后,将每个成员信息的文本表现形式打印到控制台。

总结

本文详细介绍了Type.GetMember()方法的用法,包括语法、返回值以及示例代码。利用Type.GetMember()方法,我们可以查找指定名称的类型成员,以便进行其他操作。