Существует ли эквивалент C# typeof для свойств/методов/участников?

Классы Type метаданные могут быть получены несколькими способами. Два из них:

var typeInfo = Type.GetType("MyClass")

и

var typeInfo = typeof(MyClass)

Преимущество второго пути состоит в том, что опечатки будут найдены компилятором, и IDE может понять то, что я говорю о (разрешение функций как рефакторинг работать, тихо не взламывая код)

Там существует эквивалентный способ сильной ссылки на участников/свойства/методы для метаданных и отражения? Могу я заменять:

var propertyInfo = typeof(MyClass).GetProperty("MyProperty")

с чем-то как:

var propertyInfo = property(MyClass.MyProperty)

18
задан David 19 March 2010 в 15:58
поделиться

2 ответа

Нет, к сожалению, нет. Это обсуждалось и даже называлось: infoof (произносится как «in-foof» для комедии), но это не реализовано ... пока. Эрик Липперт написал об этом в блоге .

Самое близкое, что вы можете сделать в C # 3, - это заставить компилятор генерировать дерево выражений, а затем извлекать его из него, но это вряд ли приятно.

17
ответ дан 30 November 2019 в 07:55
поделиться

Нет, в C # такого синтаксиса нет.

0
ответ дан 30 November 2019 в 07:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: