Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/05/2007, 05:50
tammander
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 19 años, 3 meses
Puntos: 7
Sesiones y clases

Hola chic@s!

A ver si alguien puede echarme una manita. Resulta que me han pasado el código de una aplicación web de reservas de Rent a Car que hace uso de un servicio web. Este servicio web accede a una BD MSSQL con una media de unas 10000 transacciones cada hora (esa es la media entre los accesos de los terminales y el servicio web) con lo cual no puedo ir accediendo a la BD cuando a mi me de la gana (eso pensaron los que diseñaron el codigo de la web). Para ello decidieron sobrecargar el servidor web que anda por otro lado. Para no darle tanto trajín a la BD decidieron crear clases con los datos pertinentes.

En el caso que nos ocupa en concreto es una clase sencilla de propiedades:

Código:
class dCuenta
    dim numCuenta, passCuenta, nomCuenta
    public property let setNumCuenta(n)
        numCuenta = n
    end property
    public property let setPassCuenta(n)
        passCuenta = n
    end property
    public property let setNomCuenta(n)
        nomCuenta = n
    end property
    
    public property get getNumCuenta
        getNumCuenta = numCuenta
    end property
    public property get getPassCuenta
        getPassCuenta = passCuenta
    end property
    public property get getNomCuenta
        getNomCuenta = nomCuenta
    end property
end class

Todo funciona correctamente hasta que asignamos dicha clase en una variable de sesion:

Código:
if not isObject(session("clsAgencia")) then
set c = new dCuenta
c.setNumCuenta = 4300001

set session("clsAgencia") = c
end if

La primera vez que pasa asigna correctamente la instancia de dCuenta a la variable de sesion. Y la puedo leer desde otra página. Cuando se recarga la página ya no hace falta (ya que ya es un objeto) Sin embargo cuando intento hacer uso de sus valores me suelta un error: El objeto no acepta esta propiedad o método: 'getNomCuenta' Sin embargo si lo tiene (ver mas arriba) y, si le hago un TypeName(session("clsAgencia")) me devuelve correctamente dCuenta. Ando un poco perdido y no se me ocurre por donde van los tiros.


Gracias anticipadas a aquel(los) que me ilumine




Un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -