ユーザーが指定したプロパティ名に基づいて選択する動的 Lambda 式を作成しようとしましたが、「ラムダ宣言に指定されたパラメーターの数が正しくありません」というエラーが発生しました。私はこれに到達しようとしています:() => myObj.propName
私のコードの最新バージョンは次のとおりです。
var parameter = Expression.Parameter(typeof(myObjType), propName);
MemberExpression exp = Expression.PropertyOrField(parameter, propName);
var func = Expression.Lambda<Func<string>>(exp, parameter).Compile();
最後の行でエラーが発生します。私は SO や他の場所でいくつかの同様のことを見てきましたが、これは私をここまで導いてくれましたが、私が間違っていることを理解することはできません. 今のところ、私が操作しようとしているすべてのプロパティは文字列です。
ありがとう。