public TempleEditViewModel Update(TempleEditViewModel Temple) { Temple _Temple = TempleRepo.Update(Temple.toModel()); if (Temple.TempleImages != null && Temple.TempleImages.Count() > 0) { var toAdd = Temple.TempleImages.Where(i => i.ID == 0); foreach (var image in toAdd) { TempleImageRepo.Add(image.toModel()); } var toUpdate = Temple.TempleImages.Where(i => i.ID > 0); foreach (var image in toUpdate) { TempleImageRepo.Update(image.toModel()); } int[] ids = Temple.TempleImages.Select(x => x.ID).ToArray(); var toDelete = TempleImageRepo.GetFilter(i => !ids.Contains(i.ID) && i.TempleID == Temple.ID); foreach (var image in toDelete) { TempleImageRepo.Remove(image); } } unitOfWork.commit(); return(_Temple.toEditViewModel()); }
public TempleEditViewModel Update(TempleEditViewModel Temple) { Temple _Temple = TempleRepo.Update(Temple.toModel()); unitOfWork.commit(); return(_Temple.toEditViewModel()); }
public TempleEditViewModel Add(TempleEditViewModel Temple) { Temple _Temple = TempleRepo.Add(Temple.toModel()); unitOfWork.commit(); if (Temple.TempleImages != null && Temple.TempleImages.Count() > 0) { foreach (var image in Temple.TempleImages) { image.TempleID = _Temple.ID; TempleImageRepo.Add(image.toModel()); } } unitOfWork.commit(); return(_Temple.toEditViewModel()); }
public void Remove(TempleEditViewModel Temple) { TempleRepo.Remove(Temple.toModel()); unitOfWork.commit(); }