文字列値でlambda発現constentExpressionを作成します
-
29-10-2019 - |
質問
プロパティ名、値(文字列)、プロパティタイプ(タイプとして)を提供するLambda式を作成したいと思います。
それに関する問題は並んでいます Expression.Constant(value1, propertyType);
fooに渡されるvalue1は文字列です。また、「不明な」タイプに解析する必要があります
static Expression<Func<T, bool>> LabmdaExpression<T>(string property1, string value1,
Type propertyType)
{
var parameterExpression = Expression.Parameter(typeof(TheObject), "o");
var memberExpression1 = Expression.PropertyOrField(parameterExpression, property1);
//casting?
var valueExpression1 = Expression.Constant(value1, propertyType);
var binaryExpression1 = Expression.GreaterThan(memberExpression1, valueExpression1);
return Expression.Lambda<Func<T, bool>>(binaryExpression1, parameterExpression);
}
正しい解決策はありません
所属していません StackOverflow