У меня есть проблема, когда в некоторых случаях (кажется, где тип свойства - bool) лямбда-выражение используется для ссылки на свойство. Я использую это, чтобы получить его имя; проблема в том, что иногда выражение модифицируется, чтобы иметь дополнительную функцию Convert().
e.g.
GetPropertyName<TSource>(Expression<Func<TSource, object>> propertyLambda) {...}
var str = GetPropertyName<MyObject>(o=>o.MyBooleanProperty);
Что происходит, так это то, что propertyLambda выглядит как Convert(o.MyBooleanProperty)
, а не o.MyBooleanProperty
, как я ожидал.
Convert
? - person Philip Daubmeier   schedule 26.06.2012