Hay toda una gran cantidad de ejemplos de reflexión por ahí que le permiten obtener ya sea:Obtener nombre de la cadena de establecimiento a través de la reflexión
1. Todas las propiedades en una clase
2. Una sola propiedad, siempre se conoce el nombre de la cadena
¿hay alguna manera (utilizando la reflexión, TypeDescriptor, o de otra manera) para obtener el nombre de la cadena de una propiedad en una clase en tiempo de ejecución, siempre todo lo que tengo es una instancia de la clase y la propiedad ?
EDIT Sé que puedo obtener fácilmente todas las propiedades de una clase utilizando la reflexión y luego obtener el nombre de cada propiedad. Lo que estoy pidiendo es una función para darme el nombre de una propiedad, siempre que le pase la instancia de la propiedad. En otras palabras, ¿cómo puedo encontrar la propiedad que quiero de la matriz PropertyInfo [] devuelta desde la clase.GetType(). GetProperty (myProperty) para que pueda obtener PropertyInfo.Name de ella?
¿Quieres decir obtener el nombre de una propiedad dentro del getter/setter de la propiedad? ¿Qué quieres decir con que "tienes" una propiedad? – Jacob
@Jacob: para agregar algo de claridad, tengo una instancia de la clase con la propiedad (así como otras propiedades) de la que quiero obtener el nombre de la cadena (no el getter/setter). Necesito hacer algún trabajo en esa propiedad usando Reflection, pero no quiero mantener el código con nombres de cadena codificados en caso de que refactorice el nombre de la propiedad. Por lo tanto, quiero obtener programáticamente el nombre de la propiedad. –
¿De qué otro modo puede identificar la propiedad que desea, si no es por su nombre? – jnylen