Exemple #1
0
 protected override SqlPack Select(NewExpression expression, SqlPack sqlPack)
 {
     foreach (Expression item in expression.Arguments)
     {
         Expression2SqlProvider.Select(item, sqlPack);
     }
     return(sqlPack);
 }
Exemple #2
0
        public Expression2SqlCore <T> Select <T2>(Expression <Func <T, T2, object> > expression = null)
        {
            string sql = SelectParser(typeof(T), typeof(T2));

            if (expression == null)
            {
                this._sqlPack.Sql.AppendFormat(sql, "*");
            }
            else
            {
                Expression2SqlProvider.Select(expression.Body, this._sqlPack);
                this._sqlPack.Sql.AppendFormat(sql, this._sqlPack.SelectFieldsStr);
            }

            return(this);
        }
Exemple #3
0
        public Expression2SqlCore <T> Select <T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression <Func <T, T2, T3, T4, T5, T6, T7, T8, T9, T10, object> > expression = null)
        {
            string sql = SelectParser(typeof(T), typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10));

            if (expression == null)
            {
                this._sqlPack.Sql.AppendFormat(sql, "*");
            }
            else
            {
                Expression2SqlProvider.Select(expression.Body, this._sqlPack);
                this._sqlPack.Sql.AppendFormat(sql, this._sqlPack.SelectFieldsStr);
            }

            return(this);
        }
Exemple #4
0
        /// <summary>
        /// Select 解析
        /// </summary>
        /// <param name="expression"></param>
        /// <returns></returns>
        public Expression2SqlCore <T> Select(Expression <Func <T, object> > expression = null)
        {
            ///获得sql
            string sql = SelectParser(typeof(T));

            ///判断查询所有字段
            if (expression == null)
            {
                this._sqlPack.Sql.AppendFormat(sql, "*");
            }
            else
            {
                ///解析要查询的字段
                Expression2SqlProvider.Select(expression.Body, this._sqlPack);
                this._sqlPack.Sql.AppendFormat(sql, this._sqlPack.SelectFieldsStr);
            }

            return(this);
        }
Exemple #5
0
 protected override SqlPack Select(UnaryExpression expression, SqlPack sqlPack)
 {
     ////获取一元运算的操作数。
     Expression2SqlProvider.Select(expression.Operand, sqlPack);
     return(sqlPack);
 }