/// <summary> /// List Implementation for the new screen. This returns an AJAX response for the datatables object on the page. /// </summary> /// <param name="model">Model</param> /// <param name="dataTablesModel">Data Table Model</param> /// <returns></returns> public virtual ActionResult List(AppMenuMaintenanceListViewModel model = null, [ModelBinder(typeof(JQueryDataTablesModelBinder))] JQueryDataTablesParameterModel dataTablesModel = null) { return(JQueryDataTablesList <AppMenuMaintenanceListViewModel, AppMenuMaintenanceService, AppMenuMaintenanceListRequest, AppMenuMaintenanceListResponse, AppMenu>(model, dataTablesModel)); }
/// <summary> /// Customize the datatables list response /// </summary> /// <typeparam name="TViewModel"></typeparam> /// <typeparam name="TEntityService"></typeparam> /// <typeparam name="TRequest"></typeparam> /// <typeparam name="TResponse"></typeparam> /// <typeparam name="TEntity"></typeparam> /// <param name="model"></param> /// <param name="dataTablesModel"></param> /// <param name="service"></param> /// <param name="request"></param> /// <param name="response"></param> /// <returns></returns> protected override ActionResult OnJQueryDataTablesListResponse <TViewModel, TEntityService, TRequest, TResponse, TEntity>(TViewModel model, JQueryDataTablesParameterModel dataTablesModel, TEntityService service, TRequest request, TResponse response) { var serviceResponse = response as SecuritySecurableMaintenanceListResponse; // //Return a stripped down version of only the data needed for the table. //If we dont do this, the json object serializes the parent securable navigation property, which adds //a lot of additional json data to be returned. // var json = JsonConvert.SerializeObject(new { draw = (dataTablesModel != null ? dataTablesModel.Draw : 1), iTotalRecords = response.TotalRows, iTotalDisplayRecords = response.TotalRows, aaData = serviceResponse.Items.Select(p => new { p.SecuritySecurableId, p.Name, ParentSecuritySecurable = new { Name = (p.ParentSecuritySecurable != null ? p.ParentSecuritySecurable.Name : String.Empty) } }).ToList() }, Formatting.None, new JsonSerializerSettings() { ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore }); return(Content(json, "application/json")); }
/// <summary> /// List Implementation for the new screen. This returns an AJAX response for the datatables object on the page. /// </summary> /// <param name="model">Model</param> /// <param name="dataTablesModel">Data Table Model</param> /// <returns></returns> public virtual ActionResult List(WebsiteDataListViewModel model = null, [ModelBinder(typeof(JQueryDataTablesModelBinder))] JQueryDataTablesParameterModel dataTablesModel = null) { return(JQueryDataTablesList <WebsiteDataListViewModel, WebsiteDataEntityService, WebsiteDataEntityPagedListRequest, WebsiteDataEntityPagedListResponse, WebsiteData>(model, dataTablesModel)); }
/// <summary> /// List Implementation for the new screen. This returns an AJAX response for the datatables object on the page. /// </summary> /// <param name="model">Model</param> /// <param name="dataTablesModel">Data Table Model</param> /// <returns></returns> public virtual ActionResult List(SecuritySecurableMaintenanceListViewModel model = null, [ModelBinder(typeof(JQueryDataTablesModelBinder))] JQueryDataTablesParameterModel dataTablesModel = null) { var result = JQueryDataTablesList <SecuritySecurableMaintenanceListViewModel, SecuritySecurableMaintenanceService, SecuritySecurableMaintenanceListRequest, SecuritySecurableMaintenanceListResponse, SecuritySecurable>(model, dataTablesModel); return(result); }
public virtual ActionResult Export(string exportConfig, AppMenuItemMaintenanceListViewModel model, [ModelBinder(typeof(JQueryDataTablesModelBinder))] JQueryDataTablesParameterModel dataTablesModel = null) { return(ExportJQueryDataTable <AppMenuItemMaintenanceListViewModel, DomainExportSettings, AppMenuItemMaintenanceService, AppMenuItemMaintenanceListRequest, AppMenuItemMaintenanceListResponse, AppMenuItem>(exportConfig, model, dataTablesModel)); }