/// <summary> /// 排序 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="query"></param> /// <param name="ordering">排序字符串,如:OrderBy("id desc,name ase")</param> /// <param name="values"></param> /// <returns></returns> public static IQueryable <T> OrderBy <T>(this IQueryable <T> query, string ordering, params object[] values) { if (query == null) { throw new ArgumentNullException("query"); } return(DynamicQueryableExtensions.OrderBy(query, ordering, values)); }
public List <TEntity> FindList(IQueryable <TEntity> query, DataBase.Pagination pag) { pag.Total = query.Count(); string OrderBys = DataBase.OrderByJoin(pag.SortName, pag.SortOrder, false); query = DynamicQueryableExtensions.OrderBy(query, OrderBys); query = query.Skip((pag.PageNumber - 1) * pag.PageSize).Take(pag.PageSize); return(query.ToList()); }
public List <TEntity> FindList(Expression <Func <TEntity, bool> > pWhere, DataBase.Pagination pag) { var query = dbSet.AsNoTracking().Where(pWhere); pag.Total = query.Count(); string OrderBys = DataBase.OrderByJoin(pag.SortName, pag.SortOrder, false); query = DynamicQueryableExtensions.OrderBy(query, OrderBys); query = query.Skip((pag.PageNumber - 1) * pag.PageSize).Take(pag.PageSize); return(query.ToList()); }
private List <Kişi> FiltreOrder(List <Kişi> kisiList, string order, bool desc) { var quarable = kisiList.AsQueryable(); if (!desc) { return(DynamicQueryableExtensions.OrderBy(quarable, order).ToList()); } else { return(DynamicQueryableExtensions.OrderBy(quarable, order + " desc").ToList()); } }
public static IOrderedQueryable <TSource> OrderBy <TSource>(this IQueryable <TSource> source, string ordering = null, params object[] args) where TSource : class { if (string.IsNullOrEmpty(ordering)) { source = OrderByAttributes(source); } else { source = DynamicQueryableExtensions.OrderBy(source, ordering, args); } return((IOrderedQueryable <TSource>)source); }
public void OrderBy_Dynamic_Exceptions() { //Arrange var testList = User.GenerateSampleModels(100, allowNullableProfiles: true); var qry = testList.AsQueryable(); //Act Assert.Throws <ParseException>(() => qry.OrderBy("Bad=3")); Assert.Throws <ParseException>(() => qry.Where("Id=123")); Assert.Throws <ArgumentNullException>(() => DynamicQueryableExtensions.OrderBy(null, "Id")); Assert.Throws <ArgumentNullException>(() => qry.OrderBy(null)); Assert.Throws <ArgumentException>(() => qry.OrderBy("")); Assert.Throws <ArgumentException>(() => qry.OrderBy(" ")); }
private static IQueryable <TSource> OrderByAttributes <TSource>(IQueryable <TSource> source) where TSource : class { var sortProperty = typeof(TSource) .GetProperties() .Where(p => p.GetCustomAttribute(typeof(SortAttribute)) != null) .Select(p => new { PropertyName = p.Name, SortAttribute = (SortAttribute)p.GetCustomAttribute(typeof(SortAttribute)) }) .OrderBy(p => p.SortAttribute.Order) .Select(p => $"{p.PropertyName} {p.SortAttribute.Direction}"); return(DynamicQueryableExtensions.OrderBy(source, string.Join(",", sortProperty))); }
public static IQueryable <T> DyOrderBy <T>(this IQueryable <T> query, string ordering, params object[] values) { return(!string.IsNullOrEmpty(ordering) ? DynamicQueryableExtensions.OrderBy(query, ordering, values) : query); }
public IActionResult LoadCompanyData() { //IL_0016: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_004c: Unknown result type (might be due to invalid IL or missing references) //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_009d: Unknown result type (might be due to invalid IL or missing references) //IL_00b6: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00f9: Unknown result type (might be due to invalid IL or missing references) try { StringValues val = this.Request.Form["draw"]; string draw = ((IEnumerable <string>)(object) this.Request.Form["draw"]).FirstOrDefault(); string text = ((IEnumerable <string>)(object) this.Request.Form["start"]).FirstOrDefault(); string text2 = ((IEnumerable <string>)(object) this.Request.Form["length"]).FirstOrDefault(); string text3 = ((IEnumerable <string>)(object) this.Request.Form["columns[" + ((IEnumerable <string>)(object) this.Request.Form["order[0][column]"]).FirstOrDefault() + "][name]"]).FirstOrDefault(); string text4 = ((IEnumerable <string>)(object) this.Request.Form["order[0][dir]"]).FirstOrDefault(); string searchValue = ((IEnumerable <string>)(object) this.Request.Form["search[value]"]).FirstOrDefault(); int count = (text2 != null) ? Convert.ToInt32(text2) : 0; int count2 = (text != null) ? Convert.ToInt32(text) : 0; int num = 0; IQueryable <Company> queryable = _companyService.GetCompanyQueryable(); if (!string.IsNullOrEmpty(text3) || !string.IsNullOrEmpty(text4)) { queryable = DynamicQueryableExtensions.OrderBy <Company>(queryable, text3 + " " + text4, Array.Empty <object>()); } if (!string.IsNullOrEmpty(searchValue)) { queryable = from m in queryable where m.Name.Contains(searchValue) select m; } num = queryable.Count(); //List<Company> data = queryable.Skip(count2).Take(count).ToList(); var items = queryable.Skip(count2).Take(count).ToList(); var data = items.Select(a => new { a.Id, a.Name, a.Address, a.CreatedDate , Demo = string.Equals(a.Demo, "Evet", StringComparison.InvariantCultureIgnoreCase) ? "Evet" : "Hayır" , CompanyTypeName = _companyTypes.ContainsKey(a.CompanyTypeId) ? _companyTypes[a.CompanyTypeId] : "Diğer" }).ToList(); return(this.Json((object)new { draw = draw, recordsFiltered = num, recordsTotal = num, data = data })); } catch (Exception) { int num2 = 5; throw; } }
public static IOrderedQueryable <TSource> OrderByInterpolated <TSource>(this IQueryable <TSource> source, FormattableString ordering) { var orderingStr = ParseFormattableString(ordering, out var args); return(DynamicQueryableExtensions.OrderBy(source, orderingStr, args)); }
public static IOrderedQueryable OrderByInterpolated(this IQueryable source, FormattableString ordering, IComparer comparer) { var orderingStr = ParseFormattableString(ordering, out var args); return(DynamicQueryableExtensions.OrderBy(source, orderingStr, comparer, args)); }
public IActionResult LoadPlaceData() { //IL_0016: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_004c: Unknown result type (might be due to invalid IL or missing references) //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_009d: Unknown result type (might be due to invalid IL or missing references) //IL_00b6: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00f9: Unknown result type (might be due to invalid IL or missing references) try { StringValues val = this.Request.Form["draw"]; string draw = ((IEnumerable <string>)(object) this.Request.Form["draw"]).FirstOrDefault(); string text = ((IEnumerable <string>)(object) this.Request.Form["start"]).FirstOrDefault(); string text2 = ((IEnumerable <string>)(object) this.Request.Form["length"]).FirstOrDefault(); string text3 = ((IEnumerable <string>)(object) this.Request.Form["columns[" + ((IEnumerable <string>)(object) this.Request.Form["order[0][column]"]).FirstOrDefault() + "][name]"]).FirstOrDefault(); string text4 = ((IEnumerable <string>)(object) this.Request.Form["order[0][dir]"]).FirstOrDefault(); string searchValue = ((IEnumerable <string>)(object) this.Request.Form["search[value]"]).FirstOrDefault(); int count = (text2 != null) ? Convert.ToInt32(text2) : 0; int count2 = (text != null) ? Convert.ToInt32(text) : 0; int num = 0; IQueryable <Place> queryable = _placeService.GetPlaceQueryable(); if (base.CurrentUser.Role != UserRole.SuperAdmin) { int companyId = base.CurrentUser.CompanyId; queryable = from w in queryable where w.CompanyId == companyId select w; } if (!string.IsNullOrEmpty(text3) || !string.IsNullOrEmpty(text4)) { queryable = DynamicQueryableExtensions.OrderBy <Place>(queryable, text3 + " " + text4, Array.Empty <object>()); } if (!string.IsNullOrEmpty(searchValue)) { queryable = from m in queryable where m.Name.Contains(searchValue) select m; } num = queryable.Count(); var items = queryable.Skip(count2).Take(count).ToList(); // { "data": "id", "name": "Id", "autoWidth": true }, // { "data": "companyName", "name": "CompanyName", "autoWidth": true }, // { "data": "name", "name": "Name", "autoWidth": true }, // { "data": "address", "name": "Address", "autoWidth": true }, // { "data": "latitude", "name": "Latitude", "autoWidth": true }, // { "data": "longitude", "name": "Longitude", "autoWidth": true }, // { "data": "guest", "name": "Guest", "autoWidth": true }, // { "data": "createdDate", "name": "CreatedDate", "autoWidth": true }, var data = items.Select(a => new { a.Id, CompanyName = a.Company.Name, a.Name, a.Address, a.Latitude, a.Longitude, a.CreatedDate , Guest = string.Equals(a.Guest, "Evet", StringComparison.InvariantCultureIgnoreCase) ? "Evet" : "Hayır" , }).ToList(); return(this.Json((object)new { draw = draw, recordsFiltered = num, recordsTotal = num, data = data })); } catch (Exception) { int num2 = 5; throw; } }