次のように定義された 2 つの式ツリーがあります。
Expression<Func<string, bool>> BoolExpression { get; }
と
Expression<Func<Customer, string>> PropertyExpression { get; }
次のような結果になる新しい式ツリーを作成する必要があります。
Customer c = null;
var expression = e1(e2(c));
Compile()、Invoke() で実行できます。
Customers c = null;
var e3 = e1.Compile().Invoke(e2.Compile().Invoke(c));
しかし、EntityDataModel を使用しているため、Compile または Invoke メソッドを使用できません。「式」をWhereメソッドに渡すと、SQLクエリに変換されてデータベースに渡されます。
PS: EntityDataModel を使用してある種のクエリ ビルダーを実行したいと考えています。n フィールドと m 条件があります。フィールドに n 式、条件に m 式を定義して結合したい。