public static List<ModeloUsuario> ObtenerTodosUsuarios()
        {
            try
            {
                List<ModeloUsuario> usuarios = null;
                NpgsqlCommand cmd = new NpgsqlCommand("select nombre,apellido,direccion,nombreusuario,email from usuario", Conexion.conexion);
                Conexion.abrirConexion();
                NpgsqlDataReader reader = cmd.ExecuteReader();
                if (reader.HasRows)
                {
                    usuarios = new List<ModeloUsuario>();
                    while (reader.Read())
                    {
                        ModeloUsuario usuario = new ModeloUsuario();
                        usuario.nombre = reader["nombre"].ToString();
                        usuario.apellido = reader["apellido"].ToString();
                        usuario.direccion = reader["direccion"].ToString();
                        usuario.nombreUsuario = reader["nombreusuario"].ToString();
                        //usuario.contrasena = reader["contrasena"].ToString();
                       // usuario.nivelAcceso = reader["nivelacceso"].ToString();
                        usuario.email = reader["email"].ToString();
                        usuarios.Add(usuario);
                    }
                }
                Conexion.cerrarConexion();
                return usuarios;

            }
            catch (Exception ex)
            {
                throw new Exception("Hubo un error con la base de datos, intente de nuevo más tarde");
            }
        }
        public static ModeloUsuario ObtenerUsuario(string nombreUsuario)
        {
            try
            {
                ModeloUsuario usuario = null;
                NpgsqlCommand cmd = new NpgsqlCommand("Select * from usuario where nombreusuario = @nombre", Conexion.conexion);
                cmd.Parameters.Add("nombre",nombreUsuario);
                Conexion.abrirConexion();
                NpgsqlDataReader reader = cmd.ExecuteReader();
                if(reader.Read())
                {
                    usuario = new ModeloUsuario();
                    usuario.nombreUsuario = reader["nombreusuario"].ToString();
                    usuario.contrasena = reader["contrasena"].ToString();
                    usuario.apellido = reader["apellido"].ToString();
                    usuario.direccion = reader["direccion"].ToString();
                    usuario.nivelAcceso = reader["nivelacceso"].ToString();
                    usuario.nombre = reader["nombre"].ToString();
                    usuario.email = reader["email"].ToString();
                }
                Conexion.cerrarConexion();
                return usuario;
            }
            catch (Exception ex)
            {

                throw new Exception("Hubo un error con la base de datos");
            }
        }
 //Este método no está disponible para un cliente, es de uso interno, por eso lleva el acceso private.
 // Habilita la opción de mandar un correo electrónico automáticamente comunicando al usuario dueño del producto
 //de que ha vendido su producto, es decir, que usuario administrador ya escogió ofertantes.
 private void InformarAlProductor(ModeloUsuario usuario, float totalUnidades)
 {
     CorreoElectronico.enviar("*****@*****.**", usuario.email, "SU PRODUCTO TIENE DUEÑO", "Agromarket Bolivia", "agromarketbolivia", "Su producto fue vendido exitosamente. Total de unidades vendidas: " + totalUnidades + " comuníquese con nosotros para mayor información.", 587, "smtp.gmail.com");
 }