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

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


C#のType.GetProperties()メソッドは、現在のTypeのプロパティを取得するために使用されます。

構文

以下は構文です-

public System.Reflection.PropertyInfo[] GetProperties ();
public abstract System.Reflection.PropertyInfo[] GetProperties (System.Reflection.BindingFlags bindingAttr);

上記のbindingAttrは、検索の実行方法を指定する列挙値のビット単位の組み合わせです。

using System;
using System.Reflection;
public class Demo {
   public static void Main(){
      Type type = typeof(System.Type);
      PropertyInfo[] info = type.GetProperties();
      Console.WriteLine("Properties... ");
      for (int i = 0; i < info.Length; i++)
         Console.WriteLine(" {0}", info[i].ToString());
   }
}

出力

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

Properties...
System.Reflection.MemberTypes MemberType
System.Type DeclaringType
System.Reflection.MethodBase DeclaringMethod
System.Type ReflectedType
System.Runtime.InteropServices.StructLayoutAttribute StructLayoutAttribute
System.Guid GUID
System.Reflection.Binder DefaultBinder
System.Reflection.Module Module
System.Reflection.Assembly Assembly
System.RuntimeTypeHandle TypeHandle
System.String FullName
System.String Namespace
System.String AssemblyQualifiedName
System.Type BaseType
System.Reflection.ConstructorInfo TypeInitializer
Boolean IsNested
System.Reflection.TypeAttributes Attributes
System.Reflection.GenericParameterAttributes GenericParameterAttributes
Boolean IsVisible
Boolean IsNotPublic
Boolean IsPublic
Boolean IsNestedPublic
Boolean IsNestedPrivate
Boolean IsNestedFamily
Boolean IsNestedAssembly
Boolean IsNestedFamANDAssem
Boolean IsNestedFamORAssem
Boolean IsAutoLayout
Boolean IsLayoutSequential
Boolean IsExplicitLayout
Boolean IsClass
Boolean IsInterface
Boolean IsValueType
Boolean IsAbstract
Boolean IsSealed
Boolean IsEnum
Boolean IsSpecialName
Boolean IsImport
Boolean IsSerializable
Boolean IsAnsiClass
Boolean IsUnicodeClass
Boolean IsAutoClass
Boolean IsArray
Boolean IsGenericType
Boolean IsGenericTypeDefinition
Boolean IsConstructedGenericType
Boolean IsGenericParameter
Int32 GenericParameterPosition
Boolean ContainsGenericParameters
Boolean IsByRef
Boolean IsPointer
Boolean IsPrimitive
Boolean IsCOMObject
Boolean HasElementType
Boolean IsContextful
Boolean IsMarshalByRef
System.Type[] GenericTypeArguments
Boolean IsSecurityCritical
Boolean IsSecuritySafeCritical
Boolean IsSecurityTransparent
System.Type UnderlyingSystemType
System.String Name
System.Collections.Generic.IEnumerable`1[System.Reflection.CustomAttributeData] CustomAttributes
Int32 MetadataToken

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

using System;
using System.Reflection;
public class Demo {
   public static void Main(){
      Type type = typeof(string);
      PropertyInfo[] info = type.GetProperties();
      Console.WriteLine("Count of Properties = "+info.Length);
      Console.WriteLine("Properties... ");
      for (int i = 0; i < info.Length; i++)
         Console.WriteLine(" {0}", info[i].ToString());
   }
}

出力

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

Count of Properties = 2
Properties...
Char Chars [Int32]
Int32 Length

  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