Если у меня есть продукт.
var p = new Product { Price = 30 };
и у меня есть следующий запрос linq.
var q = repo.Products().Where(x=>x.Price == p.Price).ToList()
В провайдере IQueryable я получаю выражение MemberExpression для p.Price, которое содержит выражение константы, однако я не могу получить от него значение «30».
Обновление
Я пробовал это, но это не похоже на работу.
var memberExpression = (MemberExpression)GetRootConstantExpression(m);
var fi = (PropertyInfo)memberExpression.Member;
var val = fi.GetValue(((ConstantExpression)memberExpression.Expression).Value, null);
Приветствие.