Я хотел бы добавить текстовое поле (дата) и кнопку в мой отчет, который фильтрует данные.
Работает приведенный ниже mvc, но входные данные должны быть проверены (должны быть ДАТА) на стороне клиента (и, если возможно, на стороне сервера)
Моя модель выглядит следующим образом:
public class DailyReport
{
public int DailyReportID { get; set; }
public DateTime? ReportDate { get; set; }
}
Вид:
@model IEnumerable<project_name.Models.DailyReport>
@* text box and button: *@
@using (Html.BeginForm("Index", "DailyReport", FormMethod.Get))
{ <p>
Title: @Html.TextBox("SearchDateString")
<input type="submit" value="Filter" />
</p>
}
@* display dates*@
@foreach (var item in Model)
{ @Html.DisplayFor(modelItem => item.ReportDate)
}
мой контроллер:
public ViewResult Index(String SearchDateString)
{
var dailyreport = db.DailyReport.Include(d => d.Site);
if (!String.IsNullOrEmpty(SearchDateString))
{
DateTime search_date = Convert.ToDateTime(SearchDateString);
dailyreport = dailyreport.Where(r => r.ReportDate == search_date);
}
return View(dailyreport.ToList());
}
Может кто-нибудь помочь мне, пожалуйста?Как убедиться, что в текстовое поле введена правильная дата?Должен ли я создать другую модель с полем даты для этого ввода?