PropertyInfo.PropertyType Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the type of this property.
public:
abstract property Type ^ PropertyType { Type ^ get(); };
public abstract Type PropertyType { get; }
member this.PropertyType : Type
Public MustOverride ReadOnly Property PropertyType As Type
Property Value
The type of this property.
Implements
Examples
The following example defines an Employee
class that has five properties. It then uses retrieves an array of PropertyInfo objects that represent those properties and displays the name and type of each.
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)
Remarks
To determine the type of a particular property, do the following:
Get a Type object that represents the type (the class or structure) that contains the property. If you are working with an object (an instance of a type), you can call its GetType method. Otherwise, you can use the C# operator or the Visual Basic GetType operator, as the example illustrates.
Get a PropertyInfo object that represents the property in which you're interested. You can do this by getting an array of all properties from the Type.GetProperties method and then iterating the elements in the array, or you can retrieve the PropertyInfo object that represents the property directly by calling the Type.GetProperty method and specifying the property name.
Retrieve the value of the PropertyType property from the PropertyInfo object.