質問: true).Count()` ここでカウントする前に、メンバー変数に基づいてデータをフィルタリングする必要があります。 **動的式API**を試しましたが、ラムダ式でエラーが発生しました。ビルドできません。 誰かがこれを手伝ってくれる?
回答: **Dynamic Expression APIの**仕組みを理解しました。私がこれらのテクノロジーに慣れていないと言ったように、私はまだ物事を学んでいます。 私は達成しなければなり`c.CPNDocs.Where(d => d.L_STAT==true).Count()` 文字列で式を記述する必要があると思いました**。DynamicExpression API**はそれを実際の式に解析し**ます**が、私は間違っていました。実際には、 **Dynamic Expression APIの** **Parse**メソッドに、実行したいことを伝える必要があります。 だから私は**c.CPNDocs.Count()**を `Expression expression = System.Linq.Dynamic.DynamicExpression.Parse(null, "c.CPNDocs.Count()", paramExSymbols);` **c.CPNDocs.Where(L_STAT == true).Count()を使用し**ます。 **Where**句に注意してください。LAMBDA式ではなく、条件のみです。 **解析**メソッドは、私が何をしようとしているのかをスマートに理解し、それを動的参照を持つ式に変換し、探していたものとまったく同じ式を生成します- `c.CPNDocs.Where(Param_0 => (Param_0.L_STAT == True)).Count()` ここで、 **Param_0**は、CPNDoc(CPNDocsのRecordインスタンス)に対して作成された動的参照です。だから最終的な結果は私が探していたものを得た。 Xmojmr、あなたの最後の答えもこの質問に対する答えでした。ありがとう。