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);
            }
        }
        public async Task <WrapperSimpleTypesDTO> ModificarInformacionGrupoEvento(GruposEventos grupoEventoParaModificar)
        {
            using (SportsGoEntities context = new SportsGoEntities(false))
            {
                GruposRepository grupoRepository = new GruposRepository(context);

                if (!grupoEventoParaModificar.CodigoArchivo.HasValue || grupoEventoParaModificar.CodigoArchivo <= 0)
                {
                    int?codigoArchivo = await grupoRepository.BuscarArchivoGrupoEvento(grupoEventoParaModificar);

                    if (codigoArchivo.HasValue && codigoArchivo > 0)
                    {
                        ArchivosRepository archivoRepo = new ArchivosRepository(context);

                        Archivos archivo = new Archivos
                        {
                            Consecutivo = codigoArchivo.Value
                        };

                        archivoRepo.EliminarArchivo(archivo);
                    }
                }

                GruposEventos grupoEventoExistente = await grupoRepository.ModificarInformacionGrupoEvento(grupoEventoParaModificar);

                if (grupoEventoParaModificar.CategoriasEventos != null && grupoEventoParaModificar.CategoriasEventos.Count > 0)
                {
                    CategoriasRepository categoriaRepo = new CategoriasRepository(context);

                    CategoriasEventos categoriaEventos = new CategoriasEventos
                    {
                        CodigoEvento = grupoEventoParaModificar.Consecutivo
                    };
                    categoriaRepo.EliminarMultiplesCategoriasEventos(categoriaEventos);

                    categoriaRepo.CrearListaCategoriaEventos(grupoEventoParaModificar.CategoriasEventos);
                }

                WrapperSimpleTypesDTO wrapperModificarInformacionGrupoEvento = new WrapperSimpleTypesDTO();

                wrapperModificarInformacionGrupoEvento.NumeroRegistrosAfectados = await context.SaveChangesAsync();

                wrapperModificarInformacionGrupoEvento.Exitoso = true;

                return(wrapperModificarInformacionGrupoEvento);
            }
        }