コード例 #1
0
    protected void ModifyFilterExpression(string FieldName, object value, ASPxCardView victim)
    {
        var criterias = CriteriaColumnAffinityResolver.SplitByColumnNames(CriteriaOperator.Parse(victim.FilterExpression)).Item2;

        BinaryOperatorType operatorType;

        if (FieldName == "ProductName")
        {
            operatorType = BinaryOperatorType.Like;
            value       += "%";
        }
        else
        {
            operatorType = BinaryOperatorType.Equal;
        }


        if (!criterias.Keys.Contains(FieldName))
        {
            criterias.Add(FieldName, new BinaryOperator(FieldName, value, operatorType));
        }
        else
        {
            criterias[FieldName] = new BinaryOperator(FieldName, value, operatorType);
        }
        victim.FilterExpression = CriteriaOperator.ToString(GroupOperator.And(criterias.Values));
    }
    protected void ModifyFilterExpression(string FieldName, object value, ASPxGridView targetGrid)
    {
        var criterias = CriteriaColumnAffinityResolver.SplitByColumnNames(CriteriaOperator.Parse(targetGrid.FilterExpression)).Item2;

        CriteriaOperator co = null;

        if (FieldName == "ProductName")
        {
            value += "%";
            co     = new FunctionOperator("Like", new OperandProperty(FieldName), new OperandValue(value));
        }
        else
        {
            co = new BinaryOperator(FieldName, value, BinaryOperatorType.Equal);
        }
        if (!criterias.Keys.Contains(FieldName))
        {
            criterias.Add(FieldName, co);
        }
        else
        {
            criterias[FieldName] = co;
        }
        targetGrid.FilterExpression = CriteriaOperator.ToString(GroupOperator.And(criterias.Values));
    }