public static Filter Property <TSource>(this Filter filter, Expression <Func <TSource, object> > projection, Value propertyValue, PropertyFilter.Types.Operator @operator) { MemberExpression body = (MemberExpression)projection.Body; var entityFieldAttribute = body.Member.GetCustomAttribute <EntityFieldAttribute>(); string name = entityFieldAttribute?.FieldName ?? body.Member.Name; return(Filter.Property(name, propertyValue, @operator)); }
public static Filter Property <TProperty>(Expression <Func <T, TProperty> > propertySelector, TProperty propertyValue, PropertyFilter.Types.Operator @operator) { MemberExpression body = (MemberExpression)propertySelector.Body; var entityFieldAttribute = body.Member.GetCustomAttribute <EntityFieldAttribute>(); string name = entityFieldAttribute?.FieldName ?? body.Member.Name; return(Filter.Property(name, Value <TProperty> .To(propertyValue), @operator)); }