【发布时间】:2014-05-01 22:58:03
【问题描述】:
我正在 MVC4 中构建应用程序,我试图确保当用户从日期选择器输入日期并提交表单时,输入的日期不小于今天的日期。
这是我的模型:
public class Job
{
[Required]
[DisplayName("Target Date for Site Survey")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime? TargetDateSurvey { get; set; }
}
我的控制器:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(Job job)
{
if (ModelState.IsValid)
{
job.CreatedDate = DateTime.Now;
job.JobstatusID = 1;
db.Jobs.Add(job);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.ClientID = new SelectList(db.Clients, "ClientID", "ClientName", job.ClientID);
ViewBag.JobstatusID = new SelectList(db.JobStatusLookUps, "JobstatusID", "JobStatusDescription", job.JobstatusID);
ViewBag.JobID = new SelectList(db.AssignAssessors, "JobID", "JobID", job.JobID);
return View(job);
}
并查看:
@model fieldManagementSystem.Models.Job
<div class="editor">
@Html.LabelFor(model => model.TargetDateSurvey)
@Html.EditorFor(model => model.TargetDateSurvey)
@Html.ValidationMessageFor(model => model.TargetDateSurvey)
</div>
我会在哪里验证模型或控制器?最好的方法是什么?
任何指导将不胜感激
【问题讨论】:
标签: c# asp.net asp.net-mvc-4