public IEnumerable Handle(Func <Guid, ContingentAggregate> al, SavePracticePlan command) { var contingentAggregate = al(command.Id); foreach (var teamCommand in command.Teams) { var team = contingentAggregate.Teams.FirstOrDefault(x => x.Id == teamCommand.Id); if (team == null) { continue; } if (team.PracticePlan.PracticeLocation == teamCommand.PracticeLocation && team.PracticePlan.PracticeTime == teamCommand.PracticeTime) { continue; } yield return(new TeamPracticeRescheduled { Id = command.Id, TeamId = teamCommand.Id, PracticeLocation = teamCommand.PracticeLocation, PracticeTime = teamCommand.PracticeTime, }); } }
public JsonResult SavePracticePlan(SavePracticePlan command) { if (command.Id == null || command.Id.Equals(Guid.Empty)) { return(Json(command)); } Domain.Dispatcher.SendCommand(command); return(Json(command)); }