public virtual string GetLoadSqlString(Criteria criteria, SqlParameterCollection paras)
        {
            string tableName = criteria.TableName;

            if (string.IsNullOrEmpty(tableName))
            {
                tableName = this.GetTableName(criteria.TableMapping.Name);
            }

            string strSQL = "select [TOPCOUNT] [COLUMNS] from [TABLE] [CONDITION] [ORDER]";

            strSQL = strSQL.Replace(ConstSql.Table, tableName);

            if (criteria.TakeCount > 0)
            {
                strSQL = strSQL.Replace(ConstSql.SelectTop, " top " + criteria.TakeCount);
            }
            else
            {
                strSQL = strSQL.Replace(ConstSql.SelectTop, " ");
            }

            string condition = this.GetConditionsSqlString(criteria.Conditions, paras);

            if (condition == string.Empty)
            {
                strSQL = strSQL.Replace(ConstSql.Condition, " ");
            }
            else
            {
                strSQL = strSQL.Replace(ConstSql.Condition, " where " + condition);
            }

            string pkColumn = criteria.PkColumn;

            if (!String.IsNullOrEmpty(pkColumn) && criteria.TableMapping != null)
            {
                pkColumn = criteria.TableMapping.ColumnPK.Name;
            }
            string columns = this.GetColumnsSqlString(pkColumn, criteria.Columns);

            if (columns == string.Empty)
            {
                strSQL = strSQL.Replace(ConstSql.Columns, " * ");
            }
            else
            {
                strSQL = strSQL.Replace(ConstSql.Columns, columns);
            }

            string order = this.GetOrdersSqlString(criteria.Orders);

            if (order == string.Empty)
            {
                strSQL = strSQL.Replace(ConstSql.Order, " ");
            }
            else
            {
                strSQL = strSQL.Replace(ConstSql.Order, " order by " + order);
            }

            return(strSQL);
        }
 public virtual string GetLoadPageSqlString(Criteria criteria, SqlParameterCollection paras)
 {
     throw new ObjectMappingException("current database engine not support GetLoadPageSqlString method!");
 }