public void SaveCommit(ISetSong song, out bool success) { using (IUnitOfWork uow = UnitOfWork.Begin()) { Save(song, out success); if (success) uow.Commit(); } }
//make it delete any shows it is related to. or not if you want those always kept. public void DeleteCommit(ISetSong song) { Checks.Argument.IsNotNull(song, "song"); using (IUnitOfWork u = UnitOfWork.Begin()) { _repo.Remove(song); u.Commit(); } }
public void SaveCommit(ISetSong song, out bool success) { using (IUnitOfWork uow = UnitOfWork.Begin()) { Save(song, out success); if (success) { uow.Commit(); } } }
//consider changing the out parameter to a validation type object public void Save(ISetSong song, out bool success) { Checks.Argument.IsNotNull(song, "song"); success = false; if (null == _repo.FindBySetSongId(song.SetSongId)) { try { _repo.Add(song); success = true; } catch (Exception ex) { success = false; } } }
public void Delete(ISetSong song) { Checks.Argument.IsNotNull(song, "song"); _repo.Remove(song); }