Sdílet prostřednictvím


PropertyInfo.PropertyType Vlastnost

Definice

Získá typ této vlastnosti.

public:
 abstract property Type ^ PropertyType { Type ^ get(); };
public abstract Type PropertyType { get; }
member this.PropertyType : Type
Public MustOverride ReadOnly Property PropertyType As Type

Hodnota vlastnosti

Typ této vlastnosti.

Implementuje

Příklady

Následující příklad definuje Employee třídu, která má pět vlastností. Potom použije pole PropertyInfo objektů, které představují tyto vlastnosti, a zobrazí název a typ každé z nich.

using System;
using System.Reflection;

public class Employee
{
   private string _id;

   public String FirstName { get; set; }
   public String MiddleName { get; set; }
   public String LastName  { get; set; }
   public DateTime HireDate  { get; set; }

   public String ID
   {
      get { return _id; }
      set {
         if (ID.Trim().Length != 9)
            throw new ArgumentException("The ID is invalid");
         _id = value;
      }
   }
}

public class Example
{
   public static void Main()
   {
      Type t = typeof(Employee);
      Console.WriteLine("The {0} type has the following properties: ",
                        t.Name);
      foreach (var prop in t.GetProperties())
         Console.WriteLine("   {0} ({1})", prop.Name,
                           prop.PropertyType.Name);
   }
}
// The example displays the following output:
//       The Employee type has the following properties:
//          FirstName (String)
//          MiddleName (String)
//          LastName (String)
//          HireDate (DateTime)
//          ID (String)
Imports System.Reflection

Public Class Employee
   Private _id As String

   Public Property FirstName As String = String.Empty
   Public Property MiddleName As String = String.Empty
   Public Property LastName As String = String.Empty
   Public Property HireDate As Date = Date.Today

   Public Property ID As String
      Get
         Return _id
      End Get
      Set
         If ID.Trim().Length <> 9 Then _
            Throw New ArgumentException("The ID is invalid")
         _id = value
      End Set
   End Property
End Class

Module Example
   Public Sub Main()
      Dim t As Type = GetType(Employee)
      Console.WriteLine("The {0} type has the following properties: ",
                        t.Name)
      For Each prop In t.GetProperties()
         Console.WriteLine("   {0} ({1})", prop.Name,
                           prop.PropertyType.Name)
      Next
   End Sub
End Module
' The example displays the following output:
'    The Employee type has the following properties:
'       FirstName (String)
'       MiddleName (String)
'       LastName (String)
'       HireDate (DateTime)
'       ID (String)

Poznámky

Pokud chcete určit typ konkrétní vlastnosti, postupujte takto:

  1. Type Získejte objekt, který představuje typ (třídu nebo strukturu), který obsahuje vlastnost . Pokud pracujete s objektem (instancí typu), můžete volat jeho GetType metodu. V opačném případě můžete použít operátor jazyka C# nebo operátor GetType jazyka Visual Basic, jak je znázorněno v příkladu.

  2. PropertyInfo Získejte objekt, který představuje vlastnost, která vás zajímá. Můžete to provést získáním pole všech vlastností z Type.GetProperties metody a následnou iterací prvků v poli, nebo můžete načíst PropertyInfo objekt, který představuje vlastnost přímo voláním Type.GetProperty metody a zadáním názvu vlastnosti.

  3. Načte hodnotu PropertyType vlastnosti z objektu PropertyInfo .

Platí pro