There is a controller, that's the type that JSON returns

[HttpPost] public ActionResult LoadDataFromAD() { //Get parameters var v = ActiveDirectory.GetUserFromAD(); // get Start (paging start index) and length (page size for paging) var draw = Request.Form.GetValues("draw").FirstOrDefault(); var start = Request.Form.GetValues("start").FirstOrDefault(); var length = Request.Form.GetValues("length").FirstOrDefault(); //Get Sort columns value var sortColumn = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][name]").FirstOrDefault(); var sortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault(); //find search columns info var contactName = Request.Form.GetValues("columns[0][search][value]").FirstOrDefault(); //SEARCHING... if (!string.IsNullOrEmpty(contactName)) { v = v.Where(a => a.DisplayName.Contains(contactName)); } int pageSize = length != null ? Convert.ToInt32(length) : 0; int skip = start != null ? Convert.ToInt32(start) : 0; int totalRecords = 0; totalRecords = v.Count(); var data = v.Skip(skip).Take(pageSize).ToList(); return Json(new { draw = draw, recordsFiltered = totalRecords, recordsTotal = totalRecords, data = data }, JsonRequestBehavior.AllowGet); } 

The contactName variable correctly transfers data.

 //SEARCHING... if (!string.IsNullOrEmpty(contactName)) { v = v.Where(a => a.DisplayName.Contains(contactName)); } 

Error occurs when trying to search

enter image description here

And when, instead of Contains, I write like this

  v = v.Where(a => a.DisplayName==contactName); 

And I enter the full line to search the table, everything works out with a bang. Help!

  • So your DisplayName may be empty. Yes and v - SanŚ́́́́́́́́́́́-
  • 2
    a.DisplayName != null && aDisplayName.Contains(... - Igor
  • Write your decision in response. So that I can close the question. Thank! - shatoidil

1 answer 1

String variables can be null . Add verification:

 a.DisplayName != null && aDisplayName.Contains(...