Я использую Datatable для отображения некоторых данных и использования параметров сортировки и разбивки на страницы ... это работает очень хорошо, и когда я попытался добавить фильтрацию (Datemin и DateMax), я получил вышеупомянутую ошибку, и она указывает на линия var draw = Request.Form.GetValues("draw").FirstOrDefault();
Это метод, который я использую в своем контроллере (перед добавлением дат) для отправки данных в мой просмотр:
[HttpPost]
public ActionResult GetList()
{
List<Réception_trains> listconsom = new List<Réception_trains>();
Отсюда возникает ошибка
var draw = Request.Form.GetValues("draw").FirstOrDefault();
var start = Request.Form.GetValues("start").FirstOrDefault();
var length = Request.Form.GetValues("length").FirstOrDefault();
//Find Order Column
var sortColumn = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][name]").FirstOrDefault();
var sortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault();
int pageSize = length != null ? Convert.ToInt32(length) : 0;
int skip = start != null ? Convert.ToInt32(start) : 0;
int recordsTotal = 0;
db.Configuration.LazyLoadingEnabled = false;
var list = db.Réception_trains.Where(y =>( y.Supprimée != true)).
Select(x => new
{
Id_rec = x.Id_rec,
N_Train = x.N_Train,
Date_rec = x.Date_rec.ToString(),
heure_rec = x.heure_rec,
Qualité = x.Qualité.Qualité1,
Poids = x.Wagons.AsEnumerable().Where(y => y.Id_rec == x.Id_rec).Select(w => (w.Poids - 15900)).Sum(),
Nbwg =x.Wagons.Where(y => y.Id_rec == x.Id_rec).Count()
});
//SORT
if (!(string.IsNullOrEmpty(sortColumn) && string.IsNullOrEmpty(sortColumnDir)))
{
list = list.OrderBy(sortColumn + " " + sortColumnDir);
}
recordsTotal = list.Count();
var data = list.Skip(skip).Take(pageSize).ToList();
return Json(new { draw = draw, recordsFiltered = recordsTotal, recordsTotal = recordsTotal, data = data }, JsonRequestBehavior.AllowGet);
}
И когда я добавил Даты, как это:
[HttpPost]
public ActionResult GetList(DateTime? Datemin=null,DateTime? DateMax=null)
{//same codes}
И назовите его из вида с помощью этого кода:
<form action="/Réception_trains/GetList"method='post'>
<input type="date" name="Datemin" id="datePicker" >
<input type="date" name="DateMax" id="datePicker" >
<input type="submit" value="MAJ">
</form>
Я получил ошибку.