Я выполняю проверку в своем веб-приложении ... проблема в том, что она кажется чрезмерной?!
Код контроллера выглядит так:
[HttpPost]
[Authentication]
public ActionResult Create([Bind(Exclude = "Id")] CaseInfo caseInfo)
{
if (!ModelState.IsValid)
{
SetupViewData();
return View();
}
_repository.Create(caseInfo);
return RedirectToAction("List");
}
Это реализация CaseInfo:
public class CaseInfo :IValidatableObject
{
public virtual Guid Id { get; set; }
public virtual DateTime ReferralDate { get; set; }
public virtual int Decision { get; set; }
public virtual string Reason { get; set; }
public virtual DateTime StartDate { get; set; }
public virtual DateTime EndDate { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
throw new NotImplementedException();
}
}
И мой CaseInfoMap:
public sealed class CaseInfoMap : ClassMap<CaseInfo>
{
public CaseInfoMap()
{
Id(x => x.Id).Not.Nullable();
Map(x => x.ReferralDate);
Map(x => x.Decision);
Map(x => x.Reason);
Map(x => x.StartDate);
Map(x => x.EndDate);
}
}
Но когда я запускаю ее и отправляю форму без значений, я получаю следующие ошибки проверки:
# The ReferralDate field is required.
# The StartDate field is required.
# The EndDate field is required.
Но я не уточнил, что эти должны быть обязательными? !! И почему поля решений и причин не выдают одинаковые ошибки проверки?
Может кто-нибудь пролить свет на это?
Я использую .NET 4 и MVC 2.