Получить тип свойства с помощью MemberExpression
Задаю похожий вопросВот , предположим этот тип:
<code> public class Product { public string Name { get; set; } public string Title { get; set; } public string Category { get; set; } public bool IsAllowed { get; set; } } </code>
и этот, который используютMemberExpression
:
<code>public class HelperClass<T> { public static void Property<TProp>(Expression<Func<T, TProp>> expression) { var body = expression.Body as MemberExpression; if(body == null) throw new ArgumentException("'expression' should be a member expression"); string propName = body.Member.Name; Type proptype = null; } } </code>
Я использую это так:
<code>HelperClass<Product>.Property(p => p.IsAllowed); </code>
вHelperClass
Мне просто нужно имя свойства (в этом примереIsAllowed
) и тип свойства (в этом примереBoolean
) Таким образом, я могу получить имя свойства, но не могу получить тип свойства. Я вижу тип свойства при отладке, как показано на следующем рисунке:
Так что вы предлагаете получить тип недвижимости?