Skip to content

DtParameters dtParameters error #9

@karthikhane

Description

@karthikhane

DtParameters dtParameters can't initilize and getting ajaxy error in data loading.
Draw = 0,
search = null
column = null
length = null

[HttpPost]
public async Task LoadTable(DtParameters dtParameters, int districtid, int schoolid)
{
schoolid = 1;
var searchBy = dtParameters.Search?.Value;

 // if we have an empty search then just order the results by Id ascending var orderCriteria = "Id"; var orderAscendingDirection = true; if (dtParameters.Order != null) { // in this example we just default sort on the 1st column orderCriteria = dtParameters.Columns[dtParameters.Order[0].Column].Data; orderAscendingDirection = dtParameters.Order[0].Dir.ToString().ToLower() == "asc"; } //Direct table list into Grid using (var Context = new SchooldexAOIContext()) { var GridData = _context.UserSetupInfos.AsQueryable(); if (!string.IsNullOrEmpty(searchBy)) { GridData = GridData.Where(r => r.FirstName != null && r.FirstName.ToUpper().Contains(searchBy.ToUpper()) || r.LastName != null && r.LastName.ToUpper().Contains(searchBy.ToUpper()) || r.Email != null && r.Email.ToUpper().Contains(searchBy.ToUpper())); } GridData = orderAscendingDirection ? GridData.OrderByDynamic(orderCriteria, DtOrderDir.Asc) : GridData.OrderByDynamic(orderCriteria, DtOrderDir.Desc); // now just get the count of items (without the skip and take) - eg how many could be returned with filtering var filteredResultsCount = await GridData.CountAsync(); var totalResultsCount = await _context.UserSetupInfos.CountAsync(); return Json(new DtResult<SchooldexAPI_DB.Contexts.UserSetupInfo> { Draw = dtParameters.Draw, RecordsTotal = totalResultsCount, RecordsFiltered = filteredResultsCount, // Data = GridData.ToList() Data = await GridData .Skip(dtParameters.Start) .Take(dtParameters.Length) .ToListAsync() }); } //} //return null; } 

Js files

var table;

$(document).ready(function () {
// $.fn.dataTable.moment("DD/MM/YYYY HH:mm:ss");
// $.fn.dataTable.moment("DD/MM/YYYY");

table = $("#userlistgrid").DataTable({ // Design Assets stateSave: true, autoWidth: true, // ServerSide Setups processing: true, serverSide: true, // Paging Setups paging: true, // Searching Setups searching: { regex: true }, // Ajax Filter ajax: { url: "/Admin/LoadTable", type: "POST", contentType: "application/json", dataType: "json", data: function (d) { d.districtid = 0; //param 1 d.schoolid = 1; //param 2 return JSON.stringify(d); } }, // Columns Setups columns: [ { data: "Id" }, { data: "FirstName" }, { data: "LastName" } , { data: "Email" }, // { data: "UserName" } ], // Column Definitions columnDefs: [ { targets: "no-sort", orderable: false }, { targets: "no-search", searchable: false }, { targets: "trim", render: function (data, type, full, meta) { if (type === "display") { data = strtrunc(data, 10); } return data; } }, { targets: "date-type", type: "date-eu" }, { targets: 10, data: null, defaultContent: "<a class='btn btn-link' role='button' href='#' onclick='edit(this)'>Edit</a>", orderable: false }, ] }); 

});

function strtrunc(str, num) {
if (str.length > num) {
return str.slice(0, num) + "...";
}
else {
return str;
}
}

function edit(rowContext) {
if (table) {
var data = table.row($(rowContext).parents("tr")).data();
alert("Example showing row edit with id: " + data["id"] + ", name: " + data["name"]);
}
}

Metadata

Metadata

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions