Esempio n. 1
0
        public static QueryExpression GetQueryExpression(QueryExpressionInfo queryExpressionInfo, OrderEntity orderEntity)
        {
            if (queryExpressionInfo == null)
            {
                return(null);
            }
            QueryExpression queryExpression = queryExpressionInfo.GetQueryExpression();
            QueryExpression tempExp         = queryExpression;

            while (tempExp != null)
            {
                string[] strs = tempExp.PropertyName.Split('.');
                if (strs[0] == "Entity")
                {
                    tempExp.PropertyName = strs[1];
                }

                string propertyValue = tempExp.PropertyValue;
                if (propertyValue.StartsWith("{") && propertyValue.EndsWith("}"))
                {
                    propertyValue = CommonFunction.TryConvertValue(orderEntity.GetObjValue(propertyValue), propertyValue);
                }

                tempExp.PropertyValue = propertyValue;
                tempExp = tempExp.RelatedExpression;
            }
            return(queryExpression);
        }
Esempio n. 2
0
        private static QueryExpressionInfo GetQueryExpressionInfo(XElement xe)
        {
            if (xe == null)
            {
                return(null);
            }
            QueryExpressionInfo q = new QueryExpressionInfo();

            SetValue(q, xe);
            QueryExpressionInfo currentQ  = q;
            XElement            currentXe = xe.Element("RelatedExpression");

            while (currentXe != null)
            {
                currentQ.RelatedExpression = GetQueryExpressionInfo(currentXe);
                currentXe = currentXe.Element("RelatedExpression");
            }
            return(q);
        }
Esempio n. 3
0
        private QueryExpression GetQueryExpression(QueryExpressionInfo queryExpressionInfo)
        {
            if (queryExpressionInfo == null)
            {
                return(null);
            }
            QueryExpression qe = new QueryExpression();

            qe.PropertyName = queryExpressionInfo.PropertyName;
            qe.QueryType    = queryExpressionInfo.QueryType;
            qe.RelatedType  = queryExpressionInfo.RelatedType == "And" ? QueryExpression.RelationType.And : QueryExpression.RelationType.Or;
            QueryExpression.Operations op = QueryExpression.Operations.Equal;
            if (queryExpressionInfo.PropertyName == QueryExpression.Operations.GreaterThan.ToString())
            {
                op = QueryExpression.Operations.GreaterThan;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.GreaterThanOrEqual.ToString())
            {
                op = QueryExpression.Operations.GreaterThanOrEqual;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.LessThan.ToString())
            {
                op = QueryExpression.Operations.LessThan;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.LessThanOrEqual.ToString())
            {
                op = QueryExpression.Operations.LessThanOrEqual;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.Like.ToString())
            {
                op = QueryExpression.Operations.Like;
            }
            qe.Operation     = op;
            qe.PropertyValue = queryExpressionInfo.PropertyValue;


            qe.RelatedExpression = GetQueryExpression(queryExpressionInfo.RelatedExpression);

            return(qe);
        }
Esempio n. 4
0
        private QueryExpression GetQueryExpression(QueryExpressionInfo queryExpressionInfo)
        {
            if (queryExpressionInfo == null)
            {
                return null;
            }
            QueryExpression qe = new QueryExpression();
            qe.PropertyName = queryExpressionInfo.PropertyName;
            qe.QueryType = queryExpressionInfo.QueryType;
            qe.RelatedType = queryExpressionInfo.RelatedType == "And" ? QueryExpression.RelationType.And : QueryExpression.RelationType.Or;
            QueryExpression.Operations op = QueryExpression.Operations.Equal;
            if (queryExpressionInfo.PropertyName == QueryExpression.Operations.GreaterThan.ToString())
            {
                op = QueryExpression.Operations.GreaterThan;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.GreaterThanOrEqual.ToString())
            {
                op = QueryExpression.Operations.GreaterThanOrEqual;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.LessThan.ToString())
            {
                op = QueryExpression.Operations.LessThan;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.LessThanOrEqual.ToString())
            {
                op = QueryExpression.Operations.LessThanOrEqual;
            }
            else if (queryExpressionInfo.PropertyName == QueryExpression.Operations.Like.ToString())
            {
                op = QueryExpression.Operations.Like;
            }
            qe.Operation = op;
            qe.PropertyValue = queryExpressionInfo.PropertyValue;


            qe.RelatedExpression = GetQueryExpression(queryExpressionInfo.RelatedExpression);

            return qe;
        }
Esempio n. 5
0
        private static QueryExpressionInfo GetQueryExpressionInfo(XElement xe)
        {
            if (xe == null)
            {
                return null;
            }
            QueryExpressionInfo q = new QueryExpressionInfo();
            SetValue(q, xe);
            QueryExpressionInfo currentQ = q;
            XElement currentXe = xe.Element("RelatedExpression");
            while (currentXe != null)
            {
                currentQ.RelatedExpression = GetQueryExpressionInfo(currentXe);
                currentXe = currentXe.Element("RelatedExpression");
            }
            return q;

        }
Esempio n. 6
0
        public static QueryExpression GetQueryExpression(QueryExpressionInfo queryExpressionInfo, OrderEntity orderEntity)
        {
            if (queryExpressionInfo == null)
            {
                return null;
            }
            QueryExpression queryExpression = queryExpressionInfo.GetQueryExpression();
            QueryExpression tempExp = queryExpression;
            while (tempExp != null)
            {

                string[] strs = tempExp.PropertyName.Split('.');
                if (strs[0] == "Entity")
                {
                    tempExp.PropertyName = strs[1];
                }

                string propertyValue = tempExp.PropertyValue;
                if (propertyValue.StartsWith("{") && propertyValue.EndsWith("}"))
                {
                    propertyValue = CommonFunction.TryConvertValue(orderEntity.GetObjValue(propertyValue), propertyValue);
                }

                tempExp.PropertyValue = propertyValue;
                tempExp = tempExp.RelatedExpression;
            }
            return queryExpression;
        }