Acceda al valor de una expresión miembro

Si tengo un producto

var p = new Product { Price = 30 };

y tengo la siguiente consulta linq.

var q = repo.Products().Where(x=>x.Price == p.Price).ToList()

En un proveedor IQueryable, obtengo una MemberExpression para el precio P. que contiene una expresión constante, sin embargo, parece que no puedo recuperar el valor "30".

Actualizar He intentado esto pero no parece funcionar.

var memberExpression = (MemberExpression)GetRootConstantExpression(m);
var fi = (PropertyInfo)memberExpression.Member;
var val = fi.GetValue(((ConstantExpression)memberExpression.Expression).Value, null);

Salud.

Respuestas a la pregunta(8)

Su respuesta a la pregunta