facing a problem i have a @HtmlTextboxFor when user doesnot insert anything it is returning the error how to pass empty string or null if it left blank.
The parameters dictionary contains a null entry for parameter 'FromDate' of non-nullable type 'System.DateTime'
when user doesnot insert anything it pass a empty string or null as value otherwise the value inserted by User.
whats wrong with my code.
public class ReportViewModel
    {
        public string FromDate { get; set; }
        public string ToDate { get; set; }
    private tDbContext tDbContext;
    private IReportService reportService;
    public void ViewReportList(DateTime fromDate, DateTime toDate)
    {
        reportService = new ReportService(tDbContext);
        ReportList = reportService.GetReportsList(fromDate, toDate);
    }
    }
view
@model Req.ViewModels.ReportViewModel
@using (Html.BeginForm("Index", "Print", FormMethod.Post))
{
 @Html.TextBoxFor(m => m.FromDate, new { @readonly = "readonly", @class = "date-picker form-control"})
@Html.TextBoxFor(m => m.ToDate, new { @readonly = true, @class = "date-picker form-control"})
}
Index Action
[HttpPost]
        public ActionResult Index(ReportViewModel reportViewModel,DateTime FromDate, DateTime ToDate)
        {
...
reportViewModel.ViewReportList(FromDate, ToDate);
                return View("Index", reportViewModel);
            }
Revised Code After Suggestion
[HttpPost]
            public ActionResult Index(ReportViewModel reportViewModel)
            {
    ...
    reportViewModel.ViewReportList(reportViewModel.FromDate, reportViewModel.ToDate);
                    return View("Index", reportViewModel);
                }
ViewmOdel
public class ReportViewModel
        {
            public DateTime? FromDate { get; set; }
        public DateTime? ToDate { get; set; }
        private tDbContext tDbContext;
        private IReportService reportService;
        public void ViewReportList(DateTime fromDate, DateTime toDate)
        {
            reportService = new ReportService(tDbContext);
            ReportList = reportService.GetReportsList(fromDate, toDate);
        }
        }
now i am getting this error it is showing the error
the best overloaded method match for ViewReportList(System.DateTime,System.DateTime)
after changes.
 
                        
Try using default value
@Html.TextBoxFor(m => m.FromDate, new { @readonly = "readonly", @class = "date-picker form-control",Value=""})