プロパティ、演算子、および一致する値をExpression<Func<T>,bool>
から引き出す方法はありますか?次の例を考える:私はすでに式のプロパティ名を引き出すことができる何かを書いたExpression <Func <T, bool>>述語からどのようにプロパティ、演算子、および値を取得しますか?
Property: CustomerID
Operator: Equals
Value: 1
Property: CustomerName
Operator: Equals
Value: Bob
、しかし:
var customers = GetCustomers();
var customerQuery = customers.Where(x=> x.CustomerID == 1
&& x.CustomerName == "Bob"); // The query is for illustration only
私は次のようなものを得ることができるようにする必要があります私は値と演算子がどこに保持されているのか分かりませんが、ExpressionのDebugViewプロパティでははっきりとわかります。
優秀、ありがとうございます。 '(BinaryExpression)predicate.Body'を使って'述語 'をキャストしなければなりませんでした。乾杯。 – GenericTypeTea