Вопрос

Мне нужно получить имя параметра выражения. То, что я хочу сделать, похоже на то, что Fluentnnernate делает с отображением столбцов:

Карта (x => x.name)

Из этого мне нужно «имя».

Как мне это сделать?

я могу получить x делая это:

Expression<Func<User, object>> exp = x => x.Id;
exp.Parameters[0].Name;

Но я не могу получить «имя». Обратите внимание, что у меня нет никакого случая, я могу вызвать. Спасибо

Это было полезно?

Решение

(expr.Body as MemberExpression).Member.Name

Как выражение возвращается object, Тело будет завернутым в преобразование выражения.

Следующее должно работать.

((expr.Body as UnaryExpression).Operand as MemberExpression).Member.Name
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top