public override string FormatField(Adorns ad, string field) { switch (ad) { case Adorns.Average: return(String.Format("AVE(`{0}`) AS `{0}`", field)); case Adorns.Distinct: return(String.Format("DISTINCT(`{0}`) AS `{0}`", field)); case Adorns.Maximum: return(String.Format("MAX(`{0}`) AS `{0}`", field)); case Adorns.Minimum: return(String.Format("MIN(`{0}`) AS `{0}`", field)); case Adorns.None: case Adorns.Substring: return(String.Format("`{0}`", field)); case Adorns.Sum: return(String.Format("SUM(`{0}`) AS `{0}`", field)); case Adorns.Total: return(String.Format("TOTAL(`{0}`) AS `{0}`", field)); default: return(String.Format("`{0}`", field)); } }
public override string FormatField(Adorns adorn, string field) { switch (adorn) { case Adorns.Average: return(string.Format("AVE([{0}]) AS [{0}]", field)); case Adorns.Distinct: return(string.Format("DISTINCT([{0}]) AS [{0}]", field)); case Adorns.Maximum: return(string.Format("MAX([{0}]) AS [{0}]", field)); case Adorns.Minimum: return(string.Format("MIN([{0}]) AS [{0}]", field)); case Adorns.Sum: return(string.Format("SUM([{0}]) AS [{0}]", field)); case Adorns.None: case Adorns.SubString: return(string.Format("[{0}]", field)); case Adorns.Total: return(string.Format("TOTAL([{0}]) AS [{0}]", field)); default: return(string.Format("[{0}]", field)); } }
protected void BuildFields(bool allowReadonly) { StringBuilder _f0 = new StringBuilder(); foreach (Property p in EntityObject.PropertyDict.Values) { Adorns a = Adorns.None; if (!allowReadonly && p.Readonly) { continue; } if (listFieldDict.Count > 0) { if (ListFieldDict.ContainsKey(p.Name)) { a = ListFieldDict[p.Name].Adorn; } else if (listFieldDict.ContainsKey(p.Field.ToUpper())) { a = ListFieldDict[p.Field.ToUpper()].Adorn; } else if (listFieldDict.ContainsKey(p.Field.ToLower())) { a = listFieldDict[p.Field.ToLower()].Adorn; } else { continue; } } AddSplitString(_f0, Connect.Driver.FormatField(a, p.Field)); } fields = _f0.ToString(); }
protected virtual void BuildFields(bool allowReadonly) { StringBuilder sb = new StringBuilder(); foreach (We7DataColumn dc in Columns) { if (dc.Direction == ParameterDirection.ReturnValue) { continue; } Adorns a = Adorns.None; if (ListFieldDict.Count > 0) { if (ListFieldDict.ContainsKey(dc.Name)) { a = listFieldDict[dc.Name].Adorn; } else { continue; } } AddSplitString(sb, Connect.Driver.FormatField(a, dc.Name)); } fields = sb.ToString(); }
public override string FormatField(Adorns adorn, string field, int start, int length) { switch (adorn) { case Adorns.SubString: return(string.Format("SUBSTRING([{0}]," + (start + 1) + "," + length + ")", field)); case Adorns.Average: case Adorns.Distinct: case Adorns.Maximum: case Adorns.Minimum: case Adorns.Sum: case Adorns.Total: case Adorns.None: default: return(string.Format("[{0}]", field)); } }
protected override void BuildFields(bool allowReadonly) { StringBuilder sb = new StringBuilder(); foreach (DataField df in Ctx.Row) { Adorns a = Adorns.None; if (ListFieldDict.Count > 0) { if (ListFieldDict.ContainsKey(df.Column.Name)) { a = ListFieldDict[df.Column.Name].Adorn; } else { continue; } } AddSplitString(sb, Connect.Driver.FormatField(a, df.Column.Name)); } Fields = sb.ToString(); }
/// <summary> /// 格式化字段名(包括函数) /// </summary> /// <param name="ad"></param> /// <param name="field"></param> /// <param name="start"></param> /// <param name="length"></param> /// <returns></returns> public abstract string FormatField(Adorns ad, string field, int start, int length);
/// <summary> /// 格式化字段名(包括函数) /// </summary> /// <param name="ad"></param> /// <param name="field"></param> /// <returns></returns> public abstract string FormatField(Adorns ad, string field);
string MakeCondition(Criteria ct, Dictionary <string, ConListField> fields) { StringBuilder _f0 = new StringBuilder(); // If the CriteraType is None, we don't put this as a condition if (ct.Type != CriteriaType.None) { if (!Columns.Contains(ct.Name)) { throw new ArgumentException("在数据集中不存在当前字段:" + ct.Name); } We7DataColumn dc = Columns[ct.Name]; if (dc.Direction == ParameterDirection.ReturnValue) { throw new ArgumentException("不能使用ReturnValue字段作为查询字段:" + ct.Name); } string t = Connect.Driver.GetCriteria(ct.Type); string pn = ""; ConListField f = fields[ct.Name]; if (f.FieldName != f.AliasName) { pn = AddParameter(f, ct.Value); } else { pn = AddParameter(dc, ct.Value); } Adorns adorn = ct.Adorn; _f0.Append(String.Format(" {0} {1} {2} ", connect.Driver.FormatField(adorn, f.FieldName, ct.Start, ct.Length), t, pn)); //_f0.Append(String.Format(" {0} {1} {2} ", f.AliasName, t, ct.Value)); } if (ct.Criterias.Count > 0) { string _f1 = ct.Mode == CriteriaMode.And ? " AND " : " OR "; if (ct.Type != CriteriaType.None) { _f0.Append(_f1); } bool _f2 = ct.Criterias.Count > 1; if (_f2) { _f0.Append("("); } _f0.Append(MakeCondition(ct.Criterias[0], fields)); for (int i = 1; i < ct.Criterias.Count; i++) { Criteria _f3 = ct.Criterias[i]; _f0.Append(_f1); _f0.Append(MakeCondition(_f3, fields)); } if (_f2) { _f0.Append(")"); } } return(_f0.ToString()); }
public Order(string n, OrderMode m) { adorn = Adorns.None; name = n; mode = m; }
public Order(string n) { adorn = Adorns.None; name = n; mode = OrderMode.Asc; }
public Order() { adorn = Adorns.None; }
public ListField(Adorns ad, string fn) { adorn = ad; fieldName = fn; }
public ListField(string fn) { adorn = Adorns.None; fieldName = fn; }
public ListField() { adorn = Adorns.None; }
public ConListField(Adorns ad, string fn, string an) { adorn = ad; fieldName = fn; aliasName = an; }