如果我有产品。 var p = new Product { Price = 30 }; 我有以下linq查询。 var q = repo.Products().Where(x=>x.Price == p.Price).ToList() 在一个IQueryable提供程序中,我得到了一个包含常量表达式的p.Price的MemberExpression,但是似乎无法从中获得值“ 30”。 更新 我已经尝试过了,但是似乎没有用。 var memberExpression = (MemberExpression)GetRootConstantExpression(m); var fi = (PropertyInfo)memberExpression.Member; var val = fi.GetValue(((ConstantExpression)memberExpression.Expression).Value, null); 干杯。