public async Task <WrapperSimpleTypesDTO> EliminarGrupoEvento(GruposEventos grupoEventoParaEliminar) { using (SportsGoEntities context = new SportsGoEntities(false)) { CategoriasRepository categoriaRepo = new CategoriasRepository(context); CategoriasEventos categoriaGrupoParaBorrar = new CategoriasEventos { CodigoEvento = grupoEventoParaEliminar.Consecutivo }; categoriaRepo.EliminarMultiplesCategoriasEventos(categoriaGrupoParaBorrar); GruposRepository grupoRepository = new GruposRepository(context); GruposEventosAsistentes gruposAsistentesParaBorrar = new GruposEventosAsistentes { CodigoEvento = grupoEventoParaEliminar.Consecutivo }; grupoRepository.EliminarMultiplesGrupoEventoAsistente(gruposAsistentesParaBorrar); NoticiasRepository noticiasRepo = new NoticiasRepository(context); Notificaciones notificacionEvento = new Notificaciones { CodigoEvento = grupoEventoParaEliminar.Consecutivo }; noticiasRepo.EliminarNotificacionesDeUnEvento(notificacionEvento); int?archivoGrupoEvento = await grupoRepository.BuscarArchivoGrupoEvento(grupoEventoParaEliminar); grupoRepository.EliminarGrupoEvento(grupoEventoParaEliminar); WrapperSimpleTypesDTO wrapperEliminarGrupoEvento = new WrapperSimpleTypesDTO(); wrapperEliminarGrupoEvento.NumeroRegistrosAfectados = await context.SaveChangesAsync(); if (archivoGrupoEvento.HasValue) { ArchivosRepository archivoRepo = new ArchivosRepository(context); Archivos archivoParaEliminar = new Archivos { Consecutivo = archivoGrupoEvento.Value, }; archivoRepo.EliminarArchivo(archivoParaEliminar); } wrapperEliminarGrupoEvento.NumeroRegistrosAfectados += await context.SaveChangesAsync(); if (wrapperEliminarGrupoEvento.NumeroRegistrosAfectados > 0) { wrapperEliminarGrupoEvento.Exitoso = true; } return(wrapperEliminarGrupoEvento); } }