// Allgemeines Select mit einstellbarer Sortierung // Mittels sort wird ein übergebenes Resultset bezüglich der angegebenen Spalte sortiert und // die sortierte Liste zurückgegeben protected IQueryable <T> OrderFunc <T>(System.Collections.Generic.IEnumerable <T> tab, string ColName, bool desc) { System.Reflection.PropertyInfo pinfo = typeof(T).GetProperty(ColName); if (desc) { return(tab.OrderByDescending(t => pinfo.GetValue(t, null)).AsQueryable()); } else { return(tab.OrderBy(t => pinfo.GetValue(t, null)).AsQueryable()); } }
public static System.Collections.Generic.IEnumerable <T> Sort <T, TKey>(this System.Collections.Generic.IEnumerable <T> source, string sortDirection, Func <T, TKey> keySelector, Func <TKey, TKey, int> comparerMethod) { System.Collections.Generic.IEnumerable <T> result; if (sortDirection == "ASC") { result = source.OrderBy(keySelector, new MyComparer <TKey>(comparerMethod)); } else { result = source.OrderByDescending(keySelector, new MyComparer <TKey>(comparerMethod)); } return(result); }