Acceso a propiedades marcadas

18/12/2006 - 08:24 por Alhambra-Eidos | Informe spam
Hola a todos,

Quisiera obtener las propiedades (y sus valores) de un objeto, SOLO áquellas
que están marcadas con un atributo concreto.
´
Cómo lo puedo hacer ?

Vi en un post anterior, que se recorren todas las propiedades de un objeto
así: foreach (PropertyInfo pi in obj.GetType().GetProperties())
MessageBox.Show(pi.Name);

pero cómo discrimino por el atributo ?

Gracias

http://www.alhambra-eidos.com/web2005/index.html
 

Leer las respuestas

#1 Alberto Poblacion
18/12/2006 - 08:37 | Informe spam
"Alhambra-Eidos" wrote in message
news:
Quisiera obtener las propiedades (y sus valores) de un objeto, SOLO
áquellas
que están marcadas con un atributo concreto.
´
Cómo lo puedo hacer ?

Vi en un post anterior, que se recorren todas las propiedades de un objeto
así: foreach (PropertyInfo pi in obj.GetType().GetProperties())
MessageBox.Show(pi.Name);

pero cómo discrimino por el atributo ?



Una vez que tienes el PropertyInfo pi, obtienes asi su colección de
atributos:

object[ ] attrs = pi.GetCustomAttributes(false);

Y luego iteras por el array examinando los atributos.
Si solo quieres saber si un atributo existe, puedes usar el método IsDefined
en lugar de GetCustomAttributes.

Preguntas similares