Hi Team
I am using DataTables on my MVC to perform server side processing for searching fields from the column on my table column from the database. On my Controller class an exception is thrown at
What I have tried:
<pre>
[HttpPost]
public ActionResult GetList()
{
int start = Convert.ToInt32(Request["start"]);
int length = Convert.ToInt32(Request["length"]);
string searchValue = Request["search[value]"];
string sortColumnName = Request["columns[" + Request["order[0][column]"] + "][name]"];
string sortDirection = Request["order[0] [dir]"];
List<TblEventsManagements> empList = new List<TblEventsManagements>();
using (eNtsaOnlineRegistrationDBContext db = new eNtsaOnlineRegistrationDBContext())
{
empList = db.TblEventsManagements.ToList<TblEventsManagements>();
int totalrows = empList.Count;
if (!string.IsNullOrEmpty(searchValue))
{
empList = empList.Where(x => x.TrainingType.ToLower().Contains(searchValue.ToLower()) || x.TrainingDescription.ToLower().Contains(searchValue.ToLower()) || x.Price.ToString().Contains(searchValue.ToLower())
|| x.Venue.ToLower().Contains(searchValue.ToLower()) || x.Facilitator.ToLower().Contains(searchValue.ToLower()) || x.WhoAttend.ToLower().Contains(searchValue.ToLower()) || x.Rsvp.ToLower().Contains(searchValue.ToLower())).ToList<TblEventsManagements>();
}
int totalrowsafterfiltering = empList.Count;
empList = empList.OrderBy(sortColumnName + " " + sortDirection).ToList<TblEventsManagements>();
empList = empList.Skip(start).Take(length).ToList<TblEventsManagements>();
return Json(new { data = empList, draw = Request["draw"], recordsTotal = totalrows, recordsFiltered = totalrowsafterfiltering }, JsonRequestBehavior.AllowGet);
}
}
<script>
$(document).ready(function () {
$("#EventManagementTable").DataTable({
"ajax": {
"url": "/Dashboard/GetList",
"type": "POST",
"datatype":"json"
},
"columns": [
{"data": "TrainingType", "name": "TrainingType"},
{ "data": "TrainingDescription", "name": "TrainingDescription" },
{ "data": "Price", "name": "Price" },
{ "data": "Venue", "name": "Venue" },
{ "data": "Facilitator", "name": "Facilitator" },
{ "data": "WhoAttend", "name": "WhoAttend" },
{"data": "RSVP", "name": "RSVP"},
],
"serverSide": "true",
"order":[0,"asc"],
"processing": "true",
"language": {
"processing":"processing... please wait"
}
});
});