public void EditEvent(CrudEvent crudEvent) { // Update Event var e = new Event(new EventId(crudEvent.Id), new ClientId(crudEvent.ClientId), new EventTitle(crudEvent.Title), new EventDescription(crudEvent.Description), new Location(crudEvent.Address, crudEvent.LocationType), new EventDate(crudEvent.StartsAt.Year, crudEvent.StartsAt.Month, crudEvent.StartsAt.Day, crudEvent.StartsAt.Hour, crudEvent.StartsAt.Minute), new EventDate(crudEvent.EndsAt.Year, crudEvent.EndsAt.Month, crudEvent.EndsAt.Day, crudEvent.EndsAt.Hour, crudEvent.EndsAt.Minute), crudEvent.Type, crudEvent.Audience, new EventPublishDate(crudEvent.PublishDate), crudEvent.IsActive); _eventsRepository.EditEvent(e); // Update Pictures _picturesRepository.DeleteAllPicturesFromEvent(e.Id.ToString()); var pictures = crudEvent.Pictures .Where(p => p != null) .Select(p => new Picture(e.Id.ToString(), null, p)) .ToList(); _picturesRepository.AddPicturesToEvent(pictures); }