protected async Task ClockIn() { timeEntryValidator.ClearErrors(); var errors = new Dictionary <string, List <string> >(); if (ClockInEntry.PositionId == 0) { errors.Add(nameof(TimeEntry.PositionId), new List <string>() { "A position must be selected." }); } if (ClockInEntry.MemberId == 0) { errors.Add(nameof(TimeEntry.MemberId), new List <string>() { "A member must be selected" }); } if (errors.Count() > 0) { timeEntryValidator.DisplayErrors(errors); } else { ClockInEntry.StartTime = DateTime.Now; var result = await TSService.PunchClock(ClockInEntry); await Modal.CloseAsync(ModalResult.Ok(result)); } }