コード例 #1
0
ファイル: AddTaskViewModel.cs プロジェクト: etanuvar/hermes2
        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);
        }