コード例 #1
0
 /// <summary>
 /// Para hacer la conexion y crear el stored procedure
 /// </summary>
 /// <param name="sp"></param>
 private void StoredProcedure(string sp)
 {
     Conectar();
     Comando             = SqlConexion.CreateCommand();
     Comando.CommandType = CommandType.StoredProcedure;
     Comando.CommandText = sp;
 }
コード例 #2
0
        /// <summary>
        /// Método Actualizar, Actualiza una localidad.
        /// </summary>
        /// <param name="objeto"> Entidad(localidad) a actualizar</param>
        public override void Actualizar(Entidad objeto)
        {
            try
            {
                localidad = (LocalidadEvento)objeto;
                Conectar();
                Comando             = SqlConexion.CreateCommand();
                Comando.CommandText = "actualizarlocalidadporid";
                Comando.CommandType = CommandType.StoredProcedure;

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Integer;
                parametro.Value        = localidad.Id;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Varchar;
                parametro.Value        = ((LocalidadEvento)localidad).Nombre;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Varchar;
                parametro.Value        = ((LocalidadEvento)localidad).Descripcion;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Varchar;
                parametro.Value        = ((LocalidadEvento)localidad).Coordenadas;
                Comando.Parameters.Add(parametro);

                leerDatos = Comando.ExecuteReader();
                leerDatos.Close();
            }
            catch (NpgsqlException e)
            {
                BaseDeDatosExcepcion ex = new BaseDeDatosExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (InvalidCastException e)
            {
                CasteoInvalidoExcepcion ex = new CasteoInvalidoExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }

            finally
            {
                Desconectar();
            }
        }
コード例 #3
0
        /// <summary>
        /// Método ConsultarPorId, consulta una localidad dado su id y lo retorna como una entidad.
        /// </summary>
        /// <param name="objeto"> Entidad que contiene el id de la localidad a consultar</param>
        public override Entidad ConsultarPorId(Entidad objeto)
        {
            localidad = (LocalidadEvento)objeto;
            try
            {
                Conectar();
                Comando             = SqlConexion.CreateCommand();
                Comando.CommandText = "ConsultarLocalidadPorId";
                Comando.CommandType = CommandType.StoredProcedure;

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Integer;
                parametro.Value        = localidad.Id;
                Comando.Parameters.Add(parametro);


                leerDatos = Comando.ExecuteReader();
                leerDatos.Read();
                localidad.Id = leerDatos.GetInt32(0);
                ((LocalidadEvento)localidad).Nombre      = leerDatos.GetString(1);
                ((LocalidadEvento)localidad).Descripcion = leerDatos.GetString(2);
                ((LocalidadEvento)localidad).Coordenadas = leerDatos.GetString(3);
                leerDatos.Close();
            }
            catch (NpgsqlException e)
            {
                BaseDeDatosExcepcion ex = new BaseDeDatosExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (InvalidCastException e)
            {
                CasteoInvalidoExcepcion ex = new CasteoInvalidoExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }

            catch (InvalidOperationException e)
            {
                OperacionInvalidaExcepcion ex = new OperacionInvalidaExcepcion(e);
                ex.NombreMetodos.Add(this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name);
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Desconectar();
            }

            return(localidad);
        }
コード例 #4
0
        /// <summary>
        /// Método Eliminar, Elimina un evento.
        /// </summary>
        /// <param name="objeto"> Entidad(evento) a eliminar</param>
        public override void Eliminar(Entidad objeto)
        {
            try
            {
                evento = (Evento)objeto;
                Conectar();
                Comando             = SqlConexion.CreateCommand();
                Comando.CommandText = "eliminareventoporid";
                Comando.CommandType = CommandType.StoredProcedure;

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Integer;
                parametro.Value        = evento.Id;
                Comando.Parameters.Add(parametro);
                leerDatos = Comando.ExecuteReader();
                leerDatos.Close();
            }
            catch (NpgsqlException e)
            {
                BaseDeDatosExcepcion ex = new BaseDeDatosExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (InvalidCastException e)
            {
                CasteoInvalidoExcepcion ex = new CasteoInvalidoExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }

            catch (InvalidOperationException e)
            {
                OperacionInvalidaExcepcion ex = new OperacionInvalidaExcepcion(e);
                ex.NombreMetodos.Add(this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name);
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Desconectar();
            }
        }
コード例 #5
0
        public int?ComproveUserPasswordBD(String Email, String Contraseña)
        {
            int?        rownumber;
            SqlConexion conexion = null;
            SqlCommand  command  = null;

            if (Email == null || Email == "")
            {
                throw new Exception("Email no valido");
            }
            if (Contraseña == null || Contraseña == "")
            {
                throw new Exception("Contraseña no valida");
            }
            try
            {
                conexion = new SqlConexion(ListConexion.GetDataSource());
                conexion.Open();
                command             = conexion.CreateCommand();
                command.CommandType = System.Data.CommandType.Text;
                command.CommandText = "Select Count(*) From Usuario Where Email=@Email AND Contraseña=@Contraseña";
                command.Parameters.Add(new SqlParameter("@Email", Email));
                command.Parameters.Add(new SqlParameter("@Contraseña", Contraseña));
                rownumber = command.ExecuteScalar() as int?;
            }
            catch (SqlException)
            {
                throw new Exception("Error en la consulta");
            }
            catch (Exception)
            {
                throw new Exception("Error en la consulta");
            }
            finally
            {
                command.Dispose();
                conexion.Close();
            }

            return(rownumber);
        }
コード例 #6
0
        /// <summary>
        /// Método ConsultarLista, consulta todas las localidades y las retorna en una lista.
        /// </summary>
        /// <param name="objeto"> Entidad para utilizar si se desea filtrar la lista</param>
        public override List <Entidad> ConsultarLista(Entidad objeto)
        {
            try
            {
                Conectar();
                Comando             = SqlConexion.CreateCommand();
                Comando.CommandText = "consultarlocalidades";
                Comando.CommandType = CommandType.StoredProcedure;

                leerDatos = Comando.ExecuteReader();
                while (leerDatos.Read())
                {
                    localidad = FabricaEntidad.CrearEntidadLocalidad();
                    ((LocalidadEvento)localidad).Id          = leerDatos.GetInt32(0);
                    ((LocalidadEvento)localidad).Nombre      = leerDatos.GetString(1);
                    ((LocalidadEvento)localidad).Descripcion = leerDatos.GetString(2);
                    ((LocalidadEvento)localidad).Coordenadas = leerDatos.GetString(3);
                    lista.Add(localidad);
                }
                leerDatos.Close();
            }
            catch (NpgsqlException e)
            {
                BaseDeDatosExcepcion ex = new BaseDeDatosExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Desconectar();
            }

            return(lista);
        }
コード例 #7
0
        /// <summary>
        /// Método Insertar, Inserta un evento.
        /// </summary>
        /// <param name="objeto"> Entidad(evento) a insertar</param>
        public override void Insertar(Entidad objeto)
        {
            try
            {
                evento = (Evento)objeto;
                Conectar();
                Comando             = SqlConexion.CreateCommand();
                Comando.CommandText = "InsertarEvento";
                Comando.CommandType = CommandType.StoredProcedure;

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Varchar;
                parametro.Value        = ((Evento)evento).Nombre;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Varchar;
                parametro.Value        = ((Evento)evento).Descripcion;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Double;
                parametro.Value        = ((Evento)evento).Precio;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Timestamp;
                parametro.Value        = ((Evento)evento).FechaInicio;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Timestamp;
                parametro.Value        = ((Evento)evento).FechaFin;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Time;
                parametro.Value        = ((Evento)evento).HoraInicio.Hour + ":" + ((Evento)evento).HoraInicio.Minute + ":"
                                         + ((Evento)evento).HoraInicio.Second;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Time;
                parametro.Value        = ((Evento)evento).HoraFin.Hour + ":" + ((Evento)evento).HoraFin.Minute + ":"
                                         + ((Evento)evento).HoraFin.Second;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Varchar;
                parametro.Value        = ((Evento)evento).Foto;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Integer;
                parametro.Value        = ((Evento)evento).IdLocalidad;
                Comando.Parameters.Add(parametro);

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Integer;
                parametro.Value        = ((Evento)evento).IdCategoria;
                Comando.Parameters.Add(parametro);

                leerDatos = Comando.ExecuteReader();
                leerDatos.Close();
            }
            catch (NpgsqlException e)
            {
                BaseDeDatosExcepcion ex = new BaseDeDatosExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (InvalidCastException e)
            {
                CasteoInvalidoExcepcion ex = new CasteoInvalidoExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }

            catch (InvalidOperationException e)
            {
                OperacionInvalidaExcepcion ex = new OperacionInvalidaExcepcion(e);
                ex.NombreMetodos.Add(this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name);
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Desconectar();
            }
        }
コード例 #8
0
        /// <summary>
        /// Método ConsultarPorId, consulta un evento dado su id y lo retorna como una entidad.
        /// </summary>
        /// <param name="objeto"> Entidad que contiene el id del evento a consultar</param>
        public override Entidad ConsultarPorId(Entidad objeto)
        {
            try
            {
                evento = (Evento)objeto;
                Conectar();
                Comando             = SqlConexion.CreateCommand();
                Comando.CommandText = "ConsultarEventoPorIdEvento";
                Comando.CommandType = CommandType.StoredProcedure;

                parametro = new NpgsqlParameter();
                parametro.NpgsqlDbType = NpgsqlDbType.Integer;
                parametro.Value        = evento.Id;
                Comando.Parameters.Add(parametro);

                leerDatos = Comando.ExecuteReader();
                leerDatos.Read();

                DateTime horaInicio = new DateTime();
                horaInicio = horaInicio.AddHours(leerDatos.GetTimeSpan(6).Hours);
                horaInicio = horaInicio.AddMinutes(leerDatos.GetTimeSpan(6).Minutes);
                horaInicio = horaInicio.AddSeconds(leerDatos.GetTimeSpan(6).Seconds);
                DateTime horaFin = new DateTime();
                horaFin = horaFin.AddHours(leerDatos.GetTimeSpan(7).Hours);
                horaFin = horaFin.AddMinutes(leerDatos.GetTimeSpan(7).Minutes);
                horaFin = horaFin.AddSeconds(leerDatos.GetTimeSpan(7).Seconds);

                evento.Id = leerDatos.GetInt32(0);
                ((Evento)evento).Nombre      = leerDatos.GetString(1);
                ((Evento)evento).Descripcion = leerDatos.GetString(2);
                ((Evento)evento).Precio      = leerDatos.GetDouble(3);
                ((Evento)evento).FechaInicio = leerDatos.GetDateTime(4);
                ((Evento)evento).FechaFin    = leerDatos.GetDateTime(5);
                ((Evento)evento).HoraInicio  = horaInicio;
                ((Evento)evento).HoraFin     = horaFin;
                ((Evento)evento).Foto        = leerDatos.GetString(8);
                ((Evento)evento).IdLocalidad = leerDatos.GetInt32(9);
                ((Evento)evento).IdCategoria = leerDatos.GetInt32(10);
                leerDatos.Close();
            }
            catch (NpgsqlException e)
            {
                BaseDeDatosExcepcion ex = new BaseDeDatosExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (InvalidCastException e)
            {
                CasteoInvalidoExcepcion ex = new CasteoInvalidoExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }

            catch (InvalidOperationException e)
            {
                OperacionInvalidaExcepcion ex = new OperacionInvalidaExcepcion(e);
                ex.NombreMetodos.Add(this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name);
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Desconectar();
            }
            return(evento);
        }
コード例 #9
0
        /// <summary>
        /// Metodo ConsultarLista, consulta todos los eventos.
        /// </summary>
        /// <param name="objeto"> Entidad para utilizar en la consulta</param>
        /// <returns></returns>
        public override List <Entidad> ConsultarLista(Entidad objeto)
        {
            lista = new List <Entidad>();
            try
            {
                Conectar();
                Comando             = SqlConexion.CreateCommand();
                Comando.CommandText = "ConsultarEventos";
                Comando.CommandType = CommandType.StoredProcedure;

                leerDatos = Comando.ExecuteReader();
                while (leerDatos.Read())
                {
                    evento = FabricaEntidad.CrearEntidadEvento();

                    DateTime horaInicio = new DateTime();

                    horaInicio = horaInicio.AddHours(leerDatos.GetTimeSpan(6).Hours);
                    horaInicio = horaInicio.AddMinutes(leerDatos.GetTimeSpan(6).Minutes);
                    horaInicio = horaInicio.AddSeconds(leerDatos.GetTimeSpan(6).Seconds);

                    DateTime horaFin = new DateTime();

                    horaFin = horaFin.AddHours(leerDatos.GetTimeSpan(7).Hours);
                    horaFin = horaFin.AddMinutes(leerDatos.GetTimeSpan(7).Minutes);
                    horaFin = horaFin.AddSeconds(leerDatos.GetTimeSpan(7).Seconds);

                    ((Evento)evento).Id          = leerDatos.GetInt32(0);
                    ((Evento)evento).Nombre      = leerDatos.GetString(1);
                    ((Evento)evento).Descripcion = leerDatos.GetString(2);
                    ((Evento)evento).Precio      = leerDatos.GetDouble(3);
                    ((Evento)evento).FechaInicio = leerDatos.GetDateTime(4);
                    ((Evento)evento).FechaFin    = leerDatos.GetDateTime(5);
                    ((Evento)evento).HoraInicio  = horaInicio;
                    ((Evento)evento).HoraFin     = horaFin;
                    ((Evento)evento).Foto        = leerDatos.GetString(8);
                    ((Evento)evento).IdLocalidad = leerDatos.GetInt32(9);
                    ((Evento)evento).IdCategoria = leerDatos.GetInt32(10);
                    lista.Add(evento);
                }
            }
            catch (NpgsqlException e)
            {
                BaseDeDatosExcepcion ex = new BaseDeDatosExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }
            catch (InvalidCastException e)
            {
                CasteoInvalidoExcepcion ex = new CasteoInvalidoExcepcion(e);
                ex.NombreMetodos = this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name;
                throw ex;
            }

            catch (InvalidOperationException e)
            {
                OperacionInvalidaExcepcion ex = new OperacionInvalidaExcepcion(e);
                ex.NombreMetodos.Add(this.GetType().FullName + "." + MethodBase.GetCurrentMethod().Name);
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Desconectar();
            }
            return(lista);
        }