C# 中的 Type.GetDefaultMembers() 方法

csharpprogrammingserver side programming更新于 2025/9/25 9:22:17

C# 中的 Type.GetDefaultMembers() 方法用于搜索当前 Type 中已设置 DefaultMemberAttribute 的成员。

语法

public virtual System.Reflection.MemberInfo[] GetDefaultMembers ();

现在让我们看一个实现 Type.GetDefaultMembers() 方法的示例 −

示例

using System;
using System.Reflection;
[DefaultMemberAttribute("subject")] public class Demo {
   public static void Main(){
      Type t = typeof(Demo);
      MemberInfo[] member = t.GetDefaultMembers();
      if (member.Length != 0){
         for (int i = 0; i < member.Length; i++)
         Console.WriteLine("{0}", member[i]);
      }
      else {
         Console.WriteLine("Default Member isn't there!");
      }
   }
   public void Name(String str) {}
   public String subject{
      get{
         return "Mathematics";
      }
   }
}

输出

这将产生以下输出 −

System.String subject

现在让我们看另一个实现 Type.GetDefaultMembers() 方法的示例 −

示例

using System;
using System.Reflection;
[DefaultMemberAttribute("rank")] public class Demo {
   public static void Main(){
      Type t = typeof(Demo);
      MemberInfo[] member = t.GetDefaultMembers();
      if (member.Length != 0){
         for (int i = 0; i < member.Length; i++)
         Console.WriteLine("{0}", member[i]);
      }
      else {
         Console.WriteLine("Default Member isn't there!");
      }
   }
   public void Name(String str) {}
   public int rank{
      get{
         return 5;
      }
   }
}

输出

这将产生以下输出 −

Int32 rank

相关文章