We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy.
Unfortunately, activation email could not send to your email. Please try again.

Sort and Filter by Nested Objects

Thread ID:

Created:

Updated:

Platform:

Replies:

127952 Dec 20,2016 10:16 AM Dec 21,2016 07:25 AM JavaScript 1
loading
Tags: ejGrid
Diamond
Asked On December 20, 2016 10:16 AM

I have the following grid, and i am wondering if it is possible to sort or filter by objects nested in objects. The second coloum i define is what i am trying to sort and filter by with no luck. i get no results back at all.
*** VIEW
@(Html.EJ().DataManager("FlatData").URL(Url.Action("GlobalDataSource", "Home", null, Request.Url.Scheme)).Adaptor(AdaptorType.UrlAdaptor))
@(Html.EJ().Grid("Grid")
.DataManagerID("FlatData")
.AllowPaging()
.AllowSorting()
.AllowMultiSorting()
.AllowFiltering()
.AllowSearching()
.ContextMenuSettings(contextMenu =>
{
contextMenu.EnableContextMenu();
})
.Columns(c =>
{
c.Field(f => f.ID).Width("7%").Add();
c.Field(f => f.Company.CompanyName).Width("15%").Add();
c.Field(f => f.TicketDisplayID).Width("15%").Add();
c.Field(f => f.CreateDate).Width("10%").Add();
c.Field(f => f.ClosedDate).Width("10%").Add();
c.Field(f => f.ServiceItem).Width("10%").Add();
c.Field(f => f.Desc).Width("13%").Add();
c.Field(f => f.RespPartyResolutionTypeId).Width("10%").Add();
c.Field(f => f.Parent).Width("10%").Add();
})
.SortSettings(sort => sort.SortedColumns(col => col.Field("ID").Direction(SortOrder.Descending).Add()))
.PageSettings(p => p.PageSize(30).EnableQueryString())
.ClientSideEvents(e => e
.Create("create")
.ActionComplete("onComplete")
.ActionBegin("actionBegin")
))
**** CONTROLLER
public ActionResult GlobalDataSource(Syncfusion.JavaScript.DataManager dm)
{
IEnumerable data = db.GlobalTicketInfo;
Syncfusion.JavaScript.DataSources.DataOperations operation = new Syncfusion.JavaScript.DataSources.DataOperations();
if (dm.Sorted != null && dm.Sorted.Count > 0)
{
data = operation.PerformSorting(data, dm.Sorted);
}
if (dm.Where != null && dm.Where.Count > 0)
{
data = operation.PerformWhereFilter(data, dm.Where, dm.Where[0].Operator);
}
int count = data.AsQueryable().Count();
if (dm.Skip != 0)
{
data = operation.PerformSkip(data, dm.Skip);
}
if (dm.Take != 0)
{
data = operation.PerformTake(data, dm.Take);
}
return Json(new { result = data, count = count }, JsonRequestBehavior.AllowGet);
}

Jayaprakash Kamaraj [Syncfusion]
Replied On December 21, 2016 07:25 AM

Hi Diamond, 
 
A support incident has been created under your account to resolve the issue. Please log on to our support website to check for further updates.  
 
Regards,
Jayaprakash K.
 


CONFIRMATION

This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.

;