public static DynamicSqlParam[] ToSqlParams(DataSorter[] sorters, Dictionary<string, string> fieldMap) { List<DynamicSqlParam> list = new List<DynamicSqlParam>(); foreach (DataSorter sorter in sorters) { DynamicSqlSorter item = new DynamicSqlSorter { Direction = (sorter.Direction == SortDirection.ASC) ? Xinchen.DbUtils.Direction.ASC : Xinchen.DbUtils.Direction.DESC }; if ((fieldMap != null) && fieldMap.ContainsKey(sorter.Property)) { item.Name = fieldMap[sorter.Property]; } else { item.Name = sorter.Property; } list.Add(item); } return list.ToArray(); }
public Sort ToSort(DataSorter[] sorters) { return FilterConverter.ConvertToSorter(sorters); }
/// <summary> /// /// </summary> public DataSorter.Builder DataSorter(DataSorter component) { return(new DataSorter.Builder(component)); }
/// <summary> /// The collection of Sorters currently applied to this Store /// </summary> /// <param name="sorter"></param> /// <returns>An instance of TBuilder</returns> public virtual TBuilder Sorters(DataSorter sorter) { this.ToComponent().Sorters.Add(sorter); return(this as TBuilder); }
/// <summary> /// 注意只会转换第一个排序规则 /// </summary> /// <param name="sorters"></param> /// <returns></returns> public static Sort ConvertToSorter(DataSorter[] sorters, Func<string, string> fieldMap = null) { foreach (var item in sorters) { return new Sort() { Field = fieldMap == null ? item.Property : fieldMap(item.Property), SortOrder = item.Direction == SortDirection.ASC ? SortOrder.ASC : SortOrder.DESCENDING }; } return new Sort() { Field = fieldMap == null ? "Id" : fieldMap("Id"), SortOrder = SortOrder.DESCENDING }; }