PropertyInfo.PropertyType Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el tipo de esta propiedad.
public:
abstract property Type ^ PropertyType { Type ^ get(); };
public abstract Type PropertyType { get; }
member this.PropertyType : Type
Public MustOverride ReadOnly Property PropertyType As Type
Valor de propiedad
Tipo de esta propiedad.
Implementaciones
Ejemplos
En el ejemplo siguiente se define una Employee
clase que tiene cinco propiedades. A continuación, usa recupera una matriz de PropertyInfo objetos que representan esas propiedades y muestra el nombre y el tipo de cada uno.
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)
Comentarios
Para determinar el tipo de una propiedad determinada, haga lo siguiente:
Obtiene un Type objeto que representa el tipo (la clase o estructura) que contiene la propiedad . Si está trabajando con un objeto (una instancia de un tipo), puede llamar a su GetType método . De lo contrario, puede usar el operador de C# o el operador GetType de Visual Basic, como se muestra en el ejemplo.
Obtenga un PropertyInfo objeto que represente la propiedad en la que está interesado. Para ello, obtenga una matriz de todas las propiedades del Type.GetProperties método y, a continuación, itera los elementos de la matriz, o puede recuperar el PropertyInfo objeto que representa la propiedad directamente llamando al Type.GetProperty método y especificando el nombre de la propiedad.
Recupere el valor de la PropertyType propiedad del PropertyInfo objeto .