複数の割り当てを行う動的ラムダ式(テキストから解析)を作成しようとしています。個々の課題の作成はかなり簡単でしたが、私はそれらを組み合わせる方法に固執しています。したがって、私が達成しようとしていることは、次のようになります。
Action<Entity> action = (entity) =>
{
entity.Property1 = "1";
entity.Property2 = "2";
};
複数のExpression.Assign式を1つに結合する方法はありますか(Expression.Lambdaは1つの式のみを入力として受け取るため)?
-編集:明確にするために、私が書いたコードは単なる擬似コードだったので、タイプミス(現在は修正されています)は何も変更しません。私が今持っているコードは次のようなものです:
Expression parameter = Expression.Parameter(typeof(Entity), "param");
Expression firstProperty = Expression.Property(parameter, "Property1");
Expression first = Expression.Assign(firstProperty, "1");
Expression secondProperty = Expression.Property(parameter, "Property2");
Expression second = Expression.Assign(secondProperty, "2");
Expression final = [INSERT MAGIC HERE]
Action<Entity> action = Expression.Lambda<Action<Entity>>(final, entity).Complie();
プロパティ名は実際にはテキスト入力に由来し、割り当て式の数は2つに制限されていないことに注意してください。これは、デモンストレーションのみを目的としています。私の質問は、割り当て式を組み合わせることができる式がありますか、それともそれぞれに異なるラムダを作成する必要がありますか?