示例#1
0
 public SqlHelper GenerateSql(SqlHelper sql)
 {
     foreach (var c in CriteriaStack)
     {
         if (c.GetType() == typeof(OpenGroup))
         {
             sql.OpenParenthesis();
         }
         if (c.GetType() == typeof(CloseGroup))
         {
             sql.CloseParenthesis();
         }
         if (c.GetType() == typeof(And))
         {
             sql.AND();
         }
         if (c.GetType() == typeof(Or))
         {
             sql.OR();
         }
         if (c.GetType() == typeof(FieldCriteria))
         {
             ((FieldCriteria) c).GenerateSql(sql);
         }
         if (c.GetType() == typeof(Literal))
         {
             sql.Add(((Literal)c).SQL);
         }
     }
     return sql;
 }