instanciar una clase

06/12/2004 - 15:54 por poncho | Informe spam
Hola saludos a todos.
Tengo un problema y es que quiero instanciar un objeto de
una clase A y que ese objeto lo pueda usar en todas las
demas paginas donde le haga referencia pero sin volver a
instanciarla de la clase A en cada pagina por que
necesito que persistan sus datos como nombre del usuario
que ingreso por ejemplo , osea que ese objeto sea
persistente mientras dure la session, hice esto con
global.asax en incio de sesion Session_Start() lo hace
muy bien me mantiene el objeto y puedo instanciarla en
todas las paginas el problema es que si entra otro
usuario no se crea un nuevo objeto instancia de la clase
A si no que continua con la anterior y lo mismo pasa si
entra otro usuario, agradesco de antemano cualquier ayuda.
Poncho

Preguntas similare

Leer las respuestas

#1 Octavio Telis Aynes
06/12/2004 - 19:45 | Informe spam
Puedes utlizar alguna de estas dos técnicas, una es utlizar cookies y otra
serializar tu objeto. De las dos te recomiendo usar Cookies si lo que deseas
es conservar información del usuario en una sesión activa.

Saludos...

Octavio Telis

"poncho" escribió en el mensaje
news:17d501c4dba3$86accbc0$
Hola saludos a todos.
Tengo un problema y es que quiero instanciar un objeto de
una clase A y que ese objeto lo pueda usar en todas las
demas paginas donde le haga referencia pero sin volver a
instanciarla de la clase A en cada pagina por que
necesito que persistan sus datos como nombre del usuario
que ingreso por ejemplo , osea que ese objeto sea
persistente mientras dure la session, hice esto con
global.asax en incio de sesion Session_Start() lo hace
muy bien me mantiene el objeto y puedo instanciarla en
todas las paginas el problema es que si entra otro
usuario no se crea un nuevo objeto instancia de la clase
A si no que continua con la anterior y lo mismo pasa si
entra otro usuario, agradesco de antemano cualquier ayuda.
Poncho
Respuesta Responder a este mensaje
#2 Poncho
06/12/2004 - 21:23 | Informe spam
Gracias por tu interez Octavio
ya estoy usando sessiones para mantener informacion del
usuario, lo que queria saber es si se puede mantener en
memoria (quiza del servidor) la intanciacion de ese
objeto mientras este viva su sesion (eso podria controlar
desde global.asax) algo como hilos por que necesito hacer
una serie de operaciones matematicas y usando funciones
que devuelven resultados acumulados eso lo podia hacer
con los Beans de java con jsp, ya tengo definidas mis
clases en c# y las converti en un libreria .DLL
Una Forma de la cual estaba haciendo crear en cada pagina
que tengo nuevamente el objeto y guardando resultados en
sesiones, pero seria mas facil si un objeto este activo
por cada usuario durante una sesion y este objeto guarde
toda esa informacion y no tenga que instanciarla en cada
pagina. espero se me haya podido entender.
Puedes utlizar alguna de estas dos técnicas, una es


utlizar cookies y otra
serializar tu objeto. De las dos te recomiendo usar


Cookies si lo que deseas
es conservar información del usuario en una sesión


activa.

Saludos...

Octavio Telis

"poncho" escribió


en el mensaje
news:17d501c4dba3$86accbc0$
Hola saludos a todos.
Tengo un problema y es que quiero instanciar un objeto




de
una clase A y que ese objeto lo pueda usar en todas las
demas paginas donde le haga referencia pero sin volver




a
instanciarla de la clase A en cada pagina por que
necesito que persistan sus datos como nombre del




usuario
que ingreso por ejemplo , osea que ese objeto sea
persistente mientras dure la session, hice esto con
global.asax en incio de sesion Session_Start() lo hace
muy bien me mantiene el objeto y puedo instanciarla en
todas las paginas el problema es que si entra otro
usuario no se crea un nuevo objeto instancia de la




clase
A si no que continua con la anterior y lo mismo pasa si
entra otro usuario, agradesco de antemano cualquier




ayuda.
Poncho




.

Respuesta Responder a este mensaje
#3 pablo crosio
07/12/2004 - 23:11 | Informe spam
hola!

si en tu global.asax en el procedimiento de evento Session_Start() tenes por
ejemplo:

TuClase objeto = new TuClase();
// seteo de propiedades iniciales
objeto.Prop1 = YY;
objeto.Prop2 = XX;
.
Session["OBJETO"] = objeto;



y luego en cualquier pagina haces:

if(Session["OBJETO"] != null)
{
TuClase objeto = (TuClase)Session["OBJETO"];
// aca podes trabajar con objeto y mantendra su valor entre paginas
}

ahora bien no es recomendable guardar objetos demasiados grandes en el
objeto Session ya que podrias tener problemas de performance y sobrecarga si
son muchos los usuarios que estan utilizando tu aplicacion

existen alternativas mejores pero para las cuales hay que programar un poco
mas, como por ejemplo las que ya te comentaron

salu2!!

pablo

"Poncho" escribió:

Gracias por tu interez Octavio
ya estoy usando sessiones para mantener informacion del
usuario, lo que queria saber es si se puede mantener en
memoria (quiza del servidor) la intanciacion de ese
objeto mientras este viva su sesion (eso podria controlar
desde global.asax) algo como hilos por que necesito hacer
una serie de operaciones matematicas y usando funciones
que devuelven resultados acumulados eso lo podia hacer
con los Beans de java con jsp, ya tengo definidas mis
clases en c# y las converti en un libreria .DLL
Una Forma de la cual estaba haciendo crear en cada pagina
que tengo nuevamente el objeto y guardando resultados en
sesiones, pero seria mas facil si un objeto este activo
por cada usuario durante una sesion y este objeto guarde
toda esa informacion y no tenga que instanciarla en cada
pagina. espero se me haya podido entender.
>Puedes utlizar alguna de estas dos técnicas, una es
utlizar cookies y otra
>serializar tu objeto. De las dos te recomiendo usar
Cookies si lo que deseas
>es conservar información del usuario en una sesión
activa.
>
>Saludos...
>
>Octavio Telis
>
>"poncho" escribió
en el mensaje
>news:17d501c4dba3$86accbc0$
>> Hola saludos a todos.
>> Tengo un problema y es que quiero instanciar un objeto
de
>> una clase A y que ese objeto lo pueda usar en todas las
>> demas paginas donde le haga referencia pero sin volver
a
>> instanciarla de la clase A en cada pagina por que
>> necesito que persistan sus datos como nombre del
usuario
>> que ingreso por ejemplo , osea que ese objeto sea
>> persistente mientras dure la session, hice esto con
>> global.asax en incio de sesion Session_Start() lo hace
>> muy bien me mantiene el objeto y puedo instanciarla en
>> todas las paginas el problema es que si entra otro
>> usuario no se crea un nuevo objeto instancia de la
clase
>> A si no que continua con la anterior y lo mismo pasa si
>> entra otro usuario, agradesco de antemano cualquier
ayuda.
>> Poncho
>
>
>.
>

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida