C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のType.GetMembers()メソッド


C#のType.GetMembers()メソッドは、現在のTypeのメンバー(プロパティ、メソッド、フィールド、イベントなど)を取得するために使用されます。

構文

以下は構文です-

public System.Reflection.MemberInfo[] GetMembers ();
public abstract System.Reflection.MemberInfo[] GetMembers (System.Reflection.BindingFlags bindingAttr);

Type.GetMembers()メソッドを実装する例を見てみましょう-

using System;
using System.Reflection;
public class Demo {
   public static void Main(){
      Type type = typeof(Subject);
      try {
         FieldInfo fieldInfo = type.GetField("SubName");
         MemberInfo[] info = type.GetMembers();
         Console.Write("Members = ");
         for (int i = 0; i < info.Length; i++)
            Console.WriteLine(" {0}", info[i]);
         Console.WriteLine("FieldInfo = {0}", fieldInfo);
      }
      catch (ArgumentNullException e){
         Console.Write("{0}", e.GetType(), e.Message);
      }
   }
}
public class Subject{
   public string SubName = "Science";
}

出力

これにより、次の出力が生成されます-

Members = System.String ToString() Boolean Equals(System.Object)
Int32 GetHashCode()
System.Type GetType()
Void .ctor()
System.String SubName
FieldInfo = System.String SubName

Type.GetMembers()メソッドを実装する別の例を見てみましょう-

using System;
using System.Reflection;
public class Demo {
   public static void Main(){
      Type type = typeof(Subject);
      try {
         FieldInfo fieldInfo = type.GetField("SubName");
         MemberInfo[] info = type.GetMembers(BindingFlags.Public | BindingFlags.Instance);
         Console.Write("Members = ");
         for (int i = 0; i < info.Length; i++)
            Console.WriteLine(" {0}", info[i]);
         Console.WriteLine("FieldInfo = {0}", fieldInfo);
      }
      catch (ArgumentNullException e){
         Console.Write("{0}", e.GetType(), e.Message);
      }
   }
}
public class Subject{
   public string SubName = "Science";
}

出力

これにより、次の出力が生成されます-

Members = System.String ToString() Boolean Equals(System.Object)
Int32 GetHashCode()
System.Type GetType()
Void .ctor()

  1. C#のType.Equals()メソッド

    C#のType.Equals()メソッドは、現在のTypeの基になるシステムタイプが、指定されたオブジェクトまたはTypeの基になるシステムタイプと同じであるかどうかを判断します。 構文 public virtual bool Equals (Type o); public override bool Equals (object o); 上記のパラメータは、基礎となるシステムタイプが現在のタイプの基礎となるシステムタイプと比較されるオブジェクトです。 Type.Equals()メソッドを実装する例を見てみましょう- using System; public class Demo { &n

  2. C#のElementAt()メソッド

    ElementAt()は、特定のインデックスで要素を取得して表示するために使用されるC#のSystem.Linqメソッドです。 以下は文字列配列です- string[] arr = { "One", "Two", "Three", "Four", "Five" }; ここで、インデックス0の要素を取得するには、ElementAt()メソッド-を使用します。 arr.ElementAt(0); 以下は完全なコードです- 例 using System.IO; using System; usi