public WhereNode(Column <T, P> column, WhereOpt opt, object min, object max) { this.column = column; this.opt = opt; this.value = min; this.value2 = max; }
/// <summary> /// /// </summary> /// <param name="column"></param> /// <param name="opt"></param> /// <param name="value"></param> public WhereNode(Column <T, P> column, WhereOpt opt, System.Collections.ICollection value) { this.column = column; this.opt = opt; this.lstValue = new List <object>(); foreach (var tmp in value) { this.lstValue.Add(tmp); } }
public WhereNode(Column <T, P> column, WhereOpt opt, object value) { this.opt = opt; this.value = value; this.column = column; }
//public static string ParameterNameForPaginationEnd = "Num_End"; //public static string ParameterNameForPaginationStart = "Num_Start"; public static string ToSql(this WhereOpt opt) { string rst = string.Empty; switch (opt) { case WhereOpt.EQ: rst = "="; break; case ~WhereOpt.EQ: rst = "<>"; break; case WhereOpt.LT: rst = "<"; break; case WhereOpt.LT | WhereOpt.EQ: rst = "<="; break; case ~WhereOpt.GT: rst = "<="; break; case WhereOpt.GT: rst = ">"; break; case WhereOpt.GT | WhereOpt.EQ: rst = ">="; break; case ~WhereOpt.LT: rst = ">="; break; case WhereOpt.IN: rst = "IN"; break; case ~WhereOpt.IN: rst = "NOT IN"; break; case WhereOpt.BT: rst = "BETWEEN"; break; case ~WhereOpt.BT: rst = "NOT BETWEEN"; break; case WhereOpt.LIKE: rst = "LIKE"; break; case ~WhereOpt.LIKE: rst = "NOT LIKE"; break; case WhereOpt.GTE: rst = ">="; break; case WhereOpt.LTE: rst = "<="; break; case WhereOpt.NoParameter: break; case WhereOpt.NULL: rst = "IS NULL"; break; case ~WhereOpt.NULL: rst = "IS NOT NULL"; break; case WhereOpt.Exists: rst = "EXISTS"; break; case ~WhereOpt.Exists: rst = "NOT EXISTS"; break; default: throw new ArgumentException("错误的关系运算符"); } return(rst); }