public ActionResult GetSubgrid(int OrderId) { Action <IGridColumnCollection <OrderDetail> > columns = c => { /* Adding "OrderID" column: */ c.Add(o => o.OrderID) .Titled("Order Number") .SortInitialDirection(GridSortDirection.Descending) .ThenSortByDescending(o => o.ProductID) .SetWidth(100); /* Adding "ProductID" column: */ c.Add(o => o.ProductID) .Titled("Product Number") .SetWidth(100); /* Adding "ProductName" column: */ c.Add(o => o.Product.ProductName) .Titled("Product Name") .SetWidth(250); /* Adding "Quantity" column: */ c.Add(o => o.Quantity) .Titled("Quantity") .SetCellCssClassesContraint(o => o.Quantity >= 50 ? "red" : "") .SetWidth(100) .Format("{0:F}"); /* Adding "UnitPrice" column: */ c.Add(o => o.UnitPrice) .Titled("Unit Price") .SetWidth(100) .Format("{0:F}"); }; var requestCulture = HttpContext.Features.Get <IRequestCultureFeature>(); var locale = requestCulture.RequestCulture.UICulture.TwoLetterISOLanguageName; var orderDetails = _orderDetailsRepository.GetForOrder(OrderId); var server = new GridServer <OrderDetail>(orderDetails, Request.Query, false, "orderDetailsGrid" + OrderId.ToString(), columns, 10, locale) .SetRowCssClasses(item => item.Quantity > 10 ? "success" : string.Empty) .Sortable() .Filterable() .SetStriped(true) .WithMultipleFilters() .WithGridItemsCount() .SetRemoveDiacritics <NorthwindDbContext>("RemoveDiacritics"); return(PartialView("_SubGrid", server.Grid)); }
public ItemsDTO <OrderDetail> GetOrderDetailsGridRows(Action <IGridColumnCollection <OrderDetail> > columns, object[] keys, QueryDictionary <StringValues> query) { var repository = new OrderDetailsRepository(_context); var server = new GridServer <OrderDetail>(repository.GetForOrder((int)keys[0]), new QueryCollection(query), true, "orderDetailssGrid" + keys[0].ToString(), columns) .Sortable() .WithPaging(10) .Filterable() .WithMultipleFilters(); // return items to displays var items = server.ItemsToDisplay; return(items); }
public ItemsDTO <OrderDetail> GetOrderDetailsGridRows(Action <IGridColumnCollection <OrderDetail> > columns, object[] keys, QueryDictionary <StringValues> query) { using (var context = new NorthwindDbContext(_options)) { int orderId; int.TryParse(keys[0].ToString(), out orderId); var repository = new OrderDetailsRepository(context); var server = new GridCoreServer <OrderDetail>(repository.GetForOrder(orderId), query, true, "orderDetailssGrid" + keys[0].ToString(), columns) .Sortable() .WithPaging(10) .Filterable() .WithMultipleFilters() .SetRemoveDiacritics <NorthwindDbContext>("RemoveDiacritics"); // return items to displays var items = server.ItemsToDisplay; return(items); } }