1: public class And<T> : IClause<T>
2: { 3: public And(IClause<T> WhereStatement1, IClause<T> WhereStatement2)
4: : base()
5: { 6: _WhereStatement1 = WhereStatement1;
7: _WhereStatement2 = WhereStatement2;
8: }
9:
10: protected IClause<T> _WhereStatement1 = null;
11: protected IClause<T> _WhereStatement2 = null;
12:
13: internal override void SetupSQL(SQLHelper Helper,Class Class)
14: { 15: _WhereStatement1.SetupSQL(Helper,Class);
16: _WhereStatement2.SetupSQL(Helper,Class);
17: }
18:
19: public override string ToString()
20: { 21: StringBuilder Builder = new StringBuilder(_ColumnName);
22: Builder.Append("(" + _WhereStatement1.ToString()); 23: Builder.Append(" AND "); 24: Builder.Append(_WhereStatement2.ToString() + ")");
25: return Builder.ToString();
26: }
27: }
28:
29: public class Or<T> : IClause<T>
30: { 31: public Or(IClause<T> WhereStatement1, IClause<T> WhereStatement2)
32: : base()
33: { 34: _WhereStatement1 = WhereStatement1;
35: _WhereStatement2 = WhereStatement2;
36: }
37:
38: protected IClause<T> _WhereStatement1 = null;
39: protected IClause<T> _WhereStatement2 = null;
40:
41: internal override void SetupSQL(SQLHelper Helper,Class Class)
42: { 43: _WhereStatement1.SetupSQL(Helper,Class);
44: _WhereStatement2.SetupSQL(Helper,Class);
45: }
46:
47: public override string ToString()
48: { 49: StringBuilder Builder = new StringBuilder(_ColumnName);
50: Builder.Append("(" + _WhereStatement1.ToString()); 51: Builder.Append(" OR "); 52: Builder.Append(_WhereStatement2.ToString() + ")");
53: return Builder.ToString();
54: }
55: }
56:
57: public class Where<T> : IClause<T>
58: { 59: public Where(Expression<Func<T, object>> Expression, HaterAide.SQL.Enums.Operators Constraint, object Value)
60: : base(Expression, Constraint, Value)
61: { 62:
63: }
64:
65: public Where(Expression<Func<T, object>> Expression, HaterAide.SQL.Enums.Operators Constraint, object Value1, object Value2)
66: : base(Expression, Constraint, Value1)
67: { 68: _Value2 = Value2;
69: }
70:
71: protected object _Value2 = null;
72:
73: internal override void SetupSQL(SQLHelper Helper,Class Class)
74: { 75: if (_ColumnType.FullName.Equals("System.String", StringComparison.CurrentCultureIgnoreCase)) 76: { 77: if (_Constraint == Enums.Operators.Between)
78: { 79: Helper.AddParameter("@" + _ColumnName + "1", (string)_Value, 255); 80: Helper.AddParameter("@" + _ColumnName + "2", (string)_Value2, 255); 81: }
82: else
83: { 84: Helper.AddParameter("@" + _ColumnName, (string)_Value, 255); 85: }
86: }
87: else
88: { 89: if (_Constraint == Enums.Operators.Between)
90: { 91: Helper.AddParameter("@" + _ColumnName + "1", _Value, GlobalFunctions.GetSQLType(_ColumnType)); 92: Helper.AddParameter("@" + _ColumnName + "2", _Value2, GlobalFunctions.GetSQLType(_ColumnType)); 93: }
94: else
95: { 96: Helper.AddParameter("@" + _ColumnName, _Value, GlobalFunctions.GetSQLType(_ColumnType)); 97: }
98: }
99: }
100:
101: public override string ToString()
102: { 103: StringBuilder Builder=new StringBuilder(_ColumnName);
104: if (_Constraint == Enums.Operators.Equals)
105: { 106: Builder.Append("="); 107: }
108: else if (_Constraint == Enums.Operators.GreaterThan)
109: { 110: Builder.Append(">"); 111: }
112: else if (_Constraint == Enums.Operators.GreaterThanOrEqual)
113: { 114: Builder.Append(">="); 115: }
116: else if (_Constraint == Enums.Operators.LessThan)
117: { 118: Builder.Append("<"); 119: }
120: else if (_Constraint == Enums.Operators.LessThanOrEqual)
121: { 122: Builder.Append("<="); 123: }
124: else if (_Constraint == Enums.Operators.Like)
125: { 126: Builder.Append(" LIKE "); 127: }
128: else if (_Constraint == Enums.Operators.NotEqual)
129: { 130: Builder.Append("<>"); 131: }
132:
133: if (_Constraint == Enums.Operators.Between)
134: { 135: Builder.Append(" BETWEEN "); 136: Builder.Append("@" + _ColumnName + "1"); 137: Builder.Append(" AND "); 138: Builder.Append("@" + _ColumnName + "2"); 139: }
140: else
141: { 142: Builder.Append("@" + _ColumnName); 143: }
144: return Builder.ToString();
145: }
146: }