Global.asax

13/02/2006 - 19:38 por Ricardo Arratia J. | Informe spam
Amigos:

Me dicen que hay que usar Global.asax para obtener la información de cuántos
usuarios conectados hay a una aplicación web en C#.
¿Alguien puede indicarme una idea de cómo?
Soy nuevo en el lenguaje y no lo conozco, muchas gracias a todos...

Ricardo

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
14/02/2006 - 00:52 | Informe spam
Ricardo,

- En Global.asax hay varios eventos globales que te valdrían para eso.
- Antes que nada, debes repasar los conceptos de Application y Session en
ASP.NET. Busca algún libro o documentación en la web.
- Cada vez que un nuevo navegante ejecuta tu aplicación se inicia para él
una sesión; o sea, que mientras que el objeto Application (que representa a
la aplicación) es uno solo, habrá un objeto Session diferente para cada uno
de los usuarios conectados.
- Tres de los eventos de Global.asax son Application_Start, que se dispara
cuando la aplicación se ejecuta por primera vez (llega el primer visitante),
Session_Start que se lanza cada vez que un nuevo navegante inicia sesión y
Session_End, que se lanza cada vez que una sesión expira.
- A grosso modo, si asignas 0 a una variable en Application_Start, le sumas
uno en Session_Start y le restas uno en Session_End, esa variable en todo
momento indicará cuántas sesiones abiertas (usuarios conectados) hay. ¿Sí?

Generalmente el mejor sitio para alojar esa variable es dentro del propio
objeto Application, por ejemplo Application["contador"]. Encontrarás
ejemplos en la literatura.

Salu2 - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:%
Amigos:

Me dicen que hay que usar Global.asax para obtener la información de
cuántos usuarios conectados hay a una aplicación web en C#.
¿Alguien puede indicarme una idea de cómo?
Soy nuevo en el lenguaje y no lo conozco, muchas gracias a todos...

Ricardo

Respuesta Responder a este mensaje
#2 Ricardo Arratia J.
14/02/2006 - 16:05 | Informe spam
Gracias por tu indicación, me funciona solamente cuando uso
Application["Sessions"], si uso otro tipo de nombre, como por ejemplo:
Application["Conectados"], en el LoadPage me tira un error...
En fin pero funciona con Sessions

Gracias
Ricardo

"Octavio Hernandez" escribió en el mensaje
news:%
Ricardo,

- En Global.asax hay varios eventos globales que te valdrían para eso.
- Antes que nada, debes repasar los conceptos de Application y Session en
ASP.NET. Busca algún libro o documentación en la web.
- Cada vez que un nuevo navegante ejecuta tu aplicación se inicia para él
una sesión; o sea, que mientras que el objeto Application (que representa
a la aplicación) es uno solo, habrá un objeto Session diferente para cada
uno de los usuarios conectados.
- Tres de los eventos de Global.asax son Application_Start, que se dispara
cuando la aplicación se ejecuta por primera vez (llega el primer
visitante), Session_Start que se lanza cada vez que un nuevo navegante
inicia sesión y Session_End, que se lanza cada vez que una sesión expira.
- A grosso modo, si asignas 0 a una variable en Application_Start, le
sumas uno en Session_Start y le restas uno en Session_End, esa variable en
todo momento indicará cuántas sesiones abiertas (usuarios conectados) hay.
¿Sí?

Generalmente el mejor sitio para alojar esa variable es dentro del propio
objeto Application, por ejemplo Application["contador"]. Encontrarás
ejemplos en la literatura.

Salu2 - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:%
Amigos:

Me dicen que hay que usar Global.asax para obtener la información de
cuántos usuarios conectados hay a una aplicación web en C#.
¿Alguien puede indicarme una idea de cómo?
Soy nuevo en el lenguaje y no lo conozco, muchas gracias a todos...

Ricardo





Respuesta Responder a este mensaje
#3 Octavio Hernandez
15/02/2006 - 09:45 | Informe spam
Ricardo,

Tú asignas a las variables de sesión, aplicación y caché el nombre que
quieres, no veo por qué con "Conectados" tiene que fallar.
Eso sí, la primera vez (en Application_Start) hay que crear la variable,
así:

Application.Add("Conectados", 0);

Luego también el tema tiene su truco, porque las cosas que se meten en "el
saco" son estáticamente de tipo object, así que para incrementar la variable
tienes que hacer un cast:

Application["Conectados"] = (int) Application["Conectados"] + 1;

Slds - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:
Gracias por tu indicación, me funciona solamente cuando uso
Application["Sessions"], si uso otro tipo de nombre, como por ejemplo:
Application["Conectados"], en el LoadPage me tira un error...
En fin pero funciona con Sessions

Gracias
Ricardo

"Octavio Hernandez" escribió en el mensaje
news:%
Ricardo,

- En Global.asax hay varios eventos globales que te valdrían para eso.
- Antes que nada, debes repasar los conceptos de Application y Session en
ASP.NET. Busca algún libro o documentación en la web.
- Cada vez que un nuevo navegante ejecuta tu aplicación se inicia para él
una sesión; o sea, que mientras que el objeto Application (que representa
a la aplicación) es uno solo, habrá un objeto Session diferente para cada
uno de los usuarios conectados.
- Tres de los eventos de Global.asax son Application_Start, que se
dispara cuando la aplicación se ejecuta por primera vez (llega el primer
visitante), Session_Start que se lanza cada vez que un nuevo navegante
inicia sesión y Session_End, que se lanza cada vez que una sesión expira.
- A grosso modo, si asignas 0 a una variable en Application_Start, le
sumas uno en Session_Start y le restas uno en Session_End, esa variable
en todo momento indicará cuántas sesiones abiertas (usuarios conectados)
hay. ¿Sí?

Generalmente el mejor sitio para alojar esa variable es dentro del propio
objeto Application, por ejemplo Application["contador"]. Encontrarás
ejemplos en la literatura.

Salu2 - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:%
Amigos:

Me dicen que hay que usar Global.asax para obtener la información de
cuántos usuarios conectados hay a una aplicación web en C#.
¿Alguien puede indicarme una idea de cómo?
Soy nuevo en el lenguaje y no lo conozco, muchas gracias a todos...

Ricardo









Respuesta Responder a este mensaje
#4 Ricardo Arratia J.
15/02/2006 - 13:56 | Informe spam
Muchas gracias Octavio, eso si que fue nuevo para mí, que puedes agregar
variables.
pero sácame de otra duda: ¿Entonces la variable Sessions existe ya? ¿Donde
puedo averiguar todos los elementos de Application?
Disculpa la molestia de tomar tu tiempo.
Gracias otra vez.

Ricardo


"Octavio Hernandez" escribió en el mensaje
news:
Ricardo,

Tú asignas a las variables de sesión, aplicación y caché el nombre que
quieres, no veo por qué con "Conectados" tiene que fallar.
Eso sí, la primera vez (en Application_Start) hay que crear la variable,
así:

Application.Add("Conectados", 0);

Luego también el tema tiene su truco, porque las cosas que se meten en "el
saco" son estáticamente de tipo object, así que para incrementar la
variable tienes que hacer un cast:

Application["Conectados"] = (int) Application["Conectados"] + 1;

Slds - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:
Gracias por tu indicación, me funciona solamente cuando uso
Application["Sessions"], si uso otro tipo de nombre, como por ejemplo:
Application["Conectados"], en el LoadPage me tira un error...
En fin pero funciona con Sessions

Gracias
Ricardo

"Octavio Hernandez" escribió en el
mensaje news:%
Ricardo,

- En Global.asax hay varios eventos globales que te valdrían para eso.
- Antes que nada, debes repasar los conceptos de Application y Session
en ASP.NET. Busca algún libro o documentación en la web.
- Cada vez que un nuevo navegante ejecuta tu aplicación se inicia para
él una sesión; o sea, que mientras que el objeto Application (que
representa a la aplicación) es uno solo, habrá un objeto Session
diferente para cada uno de los usuarios conectados.
- Tres de los eventos de Global.asax son Application_Start, que se
dispara cuando la aplicación se ejecuta por primera vez (llega el primer
visitante), Session_Start que se lanza cada vez que un nuevo navegante
inicia sesión y Session_End, que se lanza cada vez que una sesión
expira.
- A grosso modo, si asignas 0 a una variable en Application_Start, le
sumas uno en Session_Start y le restas uno en Session_End, esa variable
en todo momento indicará cuántas sesiones abiertas (usuarios conectados)
hay. ¿Sí?

Generalmente el mejor sitio para alojar esa variable es dentro del
propio objeto Application, por ejemplo Application["contador"].
Encontrarás ejemplos en la literatura.

Salu2 - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:%
Amigos:

Me dicen que hay que usar Global.asax para obtener la información de
cuántos usuarios conectados hay a una aplicación web en C#.
¿Alguien puede indicarme una idea de cómo?
Soy nuevo en el lenguaje y no lo conozco, muchas gracias a todos...

Ricardo













Respuesta Responder a este mensaje
#5 Octavio Hernandez
16/02/2006 - 00:16 | Informe spam
Hola, Ricardo!

Pues según lo que dices, tiene toda la pinta de que "Sessions" existe de
antemano en Application, lo cual tiene lógica...
Yo no lo sabía, ni me parece haber visto documentado por ningún sitio qué
otras variables predefinidas hay. Tal vez algún colega del foro que esté más
"puesto" en ASP.NET nos pueda decir algo.

Slds - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:%
Muchas gracias Octavio, eso si que fue nuevo para mí, que puedes agregar
variables.
pero sácame de otra duda: ¿Entonces la variable Sessions existe ya? ¿Donde
puedo averiguar todos los elementos de Application?
Disculpa la molestia de tomar tu tiempo.
Gracias otra vez.

Ricardo


"Octavio Hernandez" escribió en el mensaje
news:
Ricardo,

Tú asignas a las variables de sesión, aplicación y caché el nombre que
quieres, no veo por qué con "Conectados" tiene que fallar.
Eso sí, la primera vez (en Application_Start) hay que crear la variable,
así:

Application.Add("Conectados", 0);

Luego también el tema tiene su truco, porque las cosas que se meten en
"el saco" son estáticamente de tipo object, así que para incrementar la
variable tienes que hacer un cast:

Application["Conectados"] = (int) Application["Conectados"] + 1;

Slds - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:
Gracias por tu indicación, me funciona solamente cuando uso
Application["Sessions"], si uso otro tipo de nombre, como por ejemplo:
Application["Conectados"], en el LoadPage me tira un error...
En fin pero funciona con Sessions

Gracias
Ricardo

"Octavio Hernandez" escribió en el
mensaje news:%
Ricardo,

- En Global.asax hay varios eventos globales que te valdrían para eso.
- Antes que nada, debes repasar los conceptos de Application y Session
en ASP.NET. Busca algún libro o documentación en la web.
- Cada vez que un nuevo navegante ejecuta tu aplicación se inicia para
él una sesión; o sea, que mientras que el objeto Application (que
representa a la aplicación) es uno solo, habrá un objeto Session
diferente para cada uno de los usuarios conectados.
- Tres de los eventos de Global.asax son Application_Start, que se
dispara cuando la aplicación se ejecuta por primera vez (llega el
primer visitante), Session_Start que se lanza cada vez que un nuevo
navegante inicia sesión y Session_End, que se lanza cada vez que una
sesión expira.
- A grosso modo, si asignas 0 a una variable en Application_Start, le
sumas uno en Session_Start y le restas uno en Session_End, esa variable
en todo momento indicará cuántas sesiones abiertas (usuarios
conectados) hay. ¿Sí?

Generalmente el mejor sitio para alojar esa variable es dentro del
propio objeto Application, por ejemplo Application["contador"].
Encontrarás ejemplos en la literatura.

Salu2 - Octavio


"Ricardo Arratia J." escribió en el mensaje
news:%
Amigos:

Me dicen que hay que usar Global.asax para obtener la información de
cuántos usuarios conectados hay a una aplicación web en C#.
¿Alguien puede indicarme una idea de cómo?
Soy nuevo en el lenguaje y no lo conozco, muchas gracias a todos...

Ricardo

















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