public IEnumerable <ValidationResult> Validate(ValidationContext validationContext) { var results = new List <ValidationResult>(); var properCreateDate = CreateDate.AddHours(int.Parse(CreateTime.Split(':')[0])); properCreateDate = properCreateDate.AddMinutes(int.Parse(CreateTime.Split(':')[1])); var properEndDate = DeadlineDate.AddHours(int.Parse(EndTime.Split(':')[0])); properEndDate = properEndDate.AddMinutes(int.Parse(EndTime.Split(':')[1])); var timespan = (properEndDate - properCreateDate).TotalDays; if (timespan < 0) { results.Add(new ValidationResult("Data planowanego zakończenia zadania musi być większa od daty utworzenia", new List <string>() { "EndDate" })); } if (string.IsNullOrEmpty(SelectedUserId) && SelectedGroupId == null) { results.Add(new ValidationResult("Musisz przydzielić zadanie do grupy albo do użytkownika", new List <string>() { "SelectedUserId", "SelectedGroupId" })); } return(results); }