public Respuesta <Participante> obtenerInformacionParticipante()
        {
            Respuesta <Participante> result = new Respuesta <Participante>();

            result.codigo  = 1;
            result.mensaje = "";
            result.data    = new Participante();

            try
            {
                using (var db = new EntitiesEVE01())
                {
                    if (MvcApplication.idEvento == 0)
                    {
                        result.codigo  = -1;
                        result.mensaje = "No se ha Iniciado un Evento para Inscripcion del Participante";
                        return(result);
                    }

                    var infoParticipante = (from p in db.EVE01_PARTICIPANTE
                                            where p.PARTICIPANTE == this.idParticipante
                                            select p).SingleOrDefault();

                    if (infoParticipante == null)
                    {
                        result.codigo  = -1;
                        result.mensaje = "No existe informacion para el Participante Indicado";
                        return(result);
                    }
                    else
                    {
                        dbModel = infoParticipante;
                    }

                    this.validaActualizacionEvento = validaActualizacionDatosEvento();
                    this.NombreCompleto            = apellidoNombreCompleto(this.idParticipante);
                    this.validaInscripcion         = validarInscripcion(this.idParticipante);
                    this.validaInscripcionbool     = validarInscripcionbool(this.idParticipante);
                    Estado objEstado = new Estado();
                    this.valorEstado = objEstado.valorEstado(infoParticipante.ESTADO_REGISTRO);
                }
                result.codigo  = 0;
                result.mensaje = "Ok";
                result.data    = this;
                return(result);
            }
            catch (Exception ex)
            {
                result.codigo  = -1;
                result.mensaje = "Ocurrio una excepcion al obtener la informacion del Participante " + ex.ToString();
                result.data    = null;
                return(result);
            }
        }
        public Respuesta <Participante> Nuevo()
        {
            Respuesta <Participante> result = new Respuesta <Participante>();

            result.codigo  = 1;
            result.mensaje = "Ocurrio un Error en Base de datos";
            result.data    = new Participante();

            if (MvcApplication.idEvento == 0)
            {
                result.codigo  = -1;
                result.data    = new Participante();
                result.mensaje = "Para registrar una Participante Nuevo, debe iniciar un Evento";
                return(result);
            }

            if (this.nombre == null)
            {
                result.codigo  = -1;
                result.mensaje = "El dato del nombre no puede ser vacio, colocar un nombre valido";
                return(result);
            }
            else if (this.apellido == null)
            {
                result.codigo  = -1;
                result.mensaje = "El dato del apellido no puede ser vacio, colocar un apellido valido";
                return(result);
            }
            else if (this.telefono == null)
            {
                result.codigo  = -1;
                result.mensaje = "El dato del telefono no puede ser vacio, colocar un telefono valido";
                return(result);
            }
            else if (this.genero == null)
            {
                result.codigo  = -1;
                result.mensaje = "El dato del geneo no puede ser vacio, colocar un dato de geneo valido";
                return(result);
            }
            else if (this.fechaNacimiento == null)
            {
                result.codigo  = -1;
                result.mensaje = "El dato de la Fecha de Nacimiento no puede ser vacio, colocar un dato de Fecha de Nacimiento valido";
                return(result);
            }

            try
            {
                using (var tr = new TransactionScope())
                {
                    using (var db = new EntitiesEVE01())
                    {
                        var correlativo = (from c in db.EVE01_PARTICIPANTE
                                           select c.PARTICIPANTE).Max();

                        var corr = correlativo + 1;

                        correlativo = correlativo == null ? 1 : corr;

                        EVE01_PARTICIPANTE nuevo = new EVE01_PARTICIPANTE();
                        nuevo.PARTICIPANTE     = correlativo;
                        nuevo.NOMBRE           = this.nombre.ToUpper();
                        nuevo.APELLIDO         = this.apellido.ToUpper();
                        nuevo.DIRECCION        = this.direccion;
                        nuevo.TELEFONO         = this.telefono;
                        nuevo.CORREO           = this.correo;
                        nuevo.TALLA            = this.talla;
                        nuevo.GENERO           = this.genero;
                        nuevo.FECHA_NACIMIENTO = this.fechaNacimiento;
                        nuevo.ALERJICO         = this.alerjico;
                        nuevo.OBSERVACIONES    = this.observaciones;
                        nuevo.ESTADO_REGISTRO  = "A";
                        nuevo.USUARIO_CREACION = MvcApplication.UserName;
                        nuevo.FECHA_CREACION   = DateTime.Now;

                        db.EVE01_PARTICIPANTE.Add(nuevo);
                        int rgp = db.SaveChanges();

                        if (rgp <= 0)
                        {
                            Transaction.Current.Rollback();
                            result.codigo  = -2;
                            result.mensaje = "Ocurrio un error al registrar al participante";
                            return(result);
                        }

                        EVE01_EVENTO_ACTUALIZACION actualizacion = new EVE01_EVENTO_ACTUALIZACION();
                        actualizacion.EVENTO           = MvcApplication.idEvento;
                        actualizacion.PARTICIPANTE     = correlativo;
                        actualizacion.ESTADO_REGISTO   = "A";
                        actualizacion.USUARIO_CREACION = MvcApplication.UserName;
                        actualizacion.FECHA_CREACION   = DateTime.Now;
                        db.EVE01_EVENTO_ACTUALIZACION.Add(actualizacion);
                        int ria = db.SaveChanges();

                        if (ria <= 0)
                        {
                            Transaction.Current.Rollback();
                            result.codigo  = -2;
                            result.mensaje = "Ocurrio un error al registrar la actualizacion de datos del evento actual";
                            return(result);
                        }
                        result.data.idParticipante = correlativo;
                    }
                    tr.Complete();
                }
                result.codigo  = 0;
                result.mensaje = "Se registro Correctamente al Participante: " + this.nombre + " " + this.apellido;
                return(result);
            }
            catch (Exception ex)
            {
                result.codigo       = -1;
                result.mensaje      = "Ocurrio una Excepcion al tratar de Registrar al Participante, ref: " + ex.ToString();
                result.mensajeError = ex.ToString();
                return(result);
            }
        }
 /// <summary>
 /// Crea una instancia de la clase Participante y el atriburo dbModel se inicializa con los valores del parametro datos
 /// </summary>
 /// <param name="datos">El modelo cuyos valores seran asignados al atributo dbModel</param>
 public Participante(EVE01_PARTICIPANTE datos)
 {
     dbModel = datos;
 }
 /// <summary>
 /// Crea una instancia de la clase Participante y el atributo dbModel se inicializa con sus valores por defecto
 /// </summary>
 public Participante()
 {
     dbModel = new EVE01_PARTICIPANTE();
 }