У меня есть список Expression, который просто указывает на различные типизированные свойства модели.
Код: Выделить всё
public class Employee: IEmployee {
public int Id { get; set; }
public string Name { get; set; }
public DateTime CreatedOn { get; set; }
}
Код: Выделить всё
x => x.Name,
x => x.CreatedOn
Код: Выделить всё
x => Convert(x.CreatedOn)
Код: Выделить всё
x => (object)x.CreatedOn
Когда я удаляю преобразование, у меня остается необработанное выражение или лямбда-выражение, которое нельзя использовать из оператора выбора, например
Код: Выделить всё
protected Expression[] expressions;
foreach(var exp in expressions) {
var context = new DbEntites();
var rawExp = exp.StripConvert();
// This does not work since Select expects an explicit return type from the expression
var myVal = context.Employees.Select(rawExp).FirstOrDefault();
}
Итак, как я могу извлечь данные из структуры сущности, используя выражение, не зная типа.
Примечание: Я, вероятно, смогу построить это, используя отражение, но мне бы хотелось этого избежать делаю что-то подобное. **
Подробнее здесь: https://stackoverflow.com/questions/784 ... n-building
Мобильная версия