Creazione dell'espressione di lambda Costantexpression con un valore di stringa
-
29-10-2019 - |
Domanda
Voglio creare espressione Lambda che fornisce il nome di proprietà, un valore (come stringa) e il tipo di proprietà (come tipo).
Il problema è in linea Expression.Constant(value1, propertyType);
Valore1 che viene passato a foo è stringa. e deve essere analizzato al tipo "sconosciuto"
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);
}
Nessuna soluzione corretta
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow