Property / Método en línea e impacto en Reflection
Miresponde a una de las preguntas sobre SO fue comentada por Valentin Kuzub, quien argumenta que incluir una propiedad en el compilador JIT hará que la reflexión deje de funcionar.
El caso es el siguiente:
class Foo
{
public string Bar { get; set; }
public void Fuzz<T>(Expression<Func<T>> lambda)
{
}
}
Fuzz(x => x.Bar);
Fuzz
a función @ acepta una expresión lambda y usa la reflexión para encontrar la propiedad. Es una práctica común en MVC enHtmlHelper
extensiones.
No creo que la reflexión deje de funcionar incluso si laBar
a propiedad @ se alinea, ya que es una llamada aBar
que estará en línea ytypeof(Foo).GetProperty("Bar")
aún devolverá una @ váliPropertyInfo
.
¿Podría confirmar esto, por favor, o mi comprensión del método en línea es incorrecta?