Как получить PropertyInfo определенного свойства?

Вы можете использовать новый visual-c# оператор nameof(), который является visual-c# частью C# 6 и доступен в c#.net Visual Studio 2015. Подробнее reflection here.

Для вашего примера вы должны visual-c# использовать:

PropertyInfo result = typeof(MyObject).GetProperty(nameof(MyObject.MyProperty));

Компилятор преобразует c-sharp nameof(MyObject.MyProperty) в строку «MyProperty», но reflect вы получаете преимущество, заключающееся .cs-file в возможности рефакторинга c# имени свойства без необходимости reflection помнить об изменении строки, потому c#.net что Visual Studio, ReSharper csharp и т.п. умеют проводить рефакторинг c#-language nameof() значения.

c#

reflection

2022-11-19T03:15:28+00:00