Я ищу динамический метод linq-to-sql Contains (StartsWith / EndsWith).
Я пробовал следующий код, но он не работал.
Есть идеи?
public static IQueryable<T> WhereContains<T, V>(this IQueryable<T> queryable, string propertyName, V propertyValue)
{
ParameterExpression pe = Expression.Parameter(typeof(T), "p");
Expression left = Expression.Property(pe, propertyName);
Expression right = Expression.Constant(propertyValue, typeof(V));
IQueryable<T> x = queryable.Where<T>(
Expression.Lambda<Func<T, bool>>(
Expression.Call(
typeof(T).GetMethod("Contains"),
left,
right),
new ParameterExpression[] { pe }));
return x;
}