我想创建一个方法,该方法接受类型为Expression<Func<T, string>
的表达式,并创建类型为Expression<Func<T, bool>>
的表达式来使用StartsWith
、EndsWith
和Contains
方法过滤字符串属性,就像这些表达式一样:
.Where(e => e.MiProperty.ToUpper().StartsWith("ABC"));
.Where(e => e.MiProperty.ToUpper().EndsWith("XYZ"));
.Where(e => e.MiProperty.ToUpper().Contains("MNO"));
方法应该如下所示:
public Expression<Func<T, bool>> AddFilterToStringProperty<T>(Expresssion<Func<T, string>> pMyExpression, string pFilter, FilterType pFiltertype)
其中FilterType是一个枚举类型,包含三种操作(StartsWith
、EndsWith
、Contains
)中的三种之一。