Visual Studio .NET

22/07/2004 - 08:25 por furabolos | Informe spam
Tengo una pequeña duda del funcionamiento de Visual
Studio .NET. Tengo mi aplicacion Web con C# incrustado. El
codigo C# esta separado del codigo HTML (tal como lo hace
VS .NET). Ese codigo C# consta de un nombre de espacio y
de una clase, la cual puede tener definida una serie de
variables, segun lo que se tenga en la pagina. Mi duda es
que si esa clase se ejecuta por completo (con
inicializacion de variables que estean definidas como
variables globales y todo) cada vez que se produce un
evento en la pagina como puede ser el accionamiento de un
boton, la marca de un CheckBox, ... Porque si esto es asi,
las variables que tengas como variables globales a la
clase, se estarian inicializando de cada vez, perdiendo
asi los valores que se le habian asignado en la primera
vez que se cargara la pagina en el metodo Page_Load (en el
caso de que asi fuera), o los valores que se le hubieran
asignado en algun otro metodo. Me podeis solventar la
duda?????

Muchas Gracias!!!!!
 

Leer las respuestas

#1 Sergio Florez M.
22/07/2004 - 14:51 | Informe spam
En efecto, cada postback que se haga vuelve a generar la clase lo que
significa que todos los objetos y variables se vuelven a crear de cero con
sus valores por defecto. Esto incluye los controles aspnet, pero si te has
fijado ellos suelen mantener su estado o informacion despues de los
postback, y esto lo hacen gracias a que guardan esta informacion en el
ViewSte que es un campo oculto de HTML encriptado.

Lo que puedes hacer para no perder los valores es guardarlos y capturarlos
desde el ViewState cada vez. En esencia es lo mismo que Session, solo que
su alcance es solamente de la página activa:

C#:
ViewState["unDato"] = "tuDato";

VB:
ViewState("unDato") = "tuDato"

Sergio Florez M.
El que persevera insiste
Medellín, Colombia
"furabolos" escribió en el mensaje
news:1c7801c46fb4$a08ae4b0$
Tengo una pequeña duda del funcionamiento de Visual
Studio .NET. Tengo mi aplicacion Web con C# incrustado. El
codigo C# esta separado del codigo HTML (tal como lo hace
VS .NET). Ese codigo C# consta de un nombre de espacio y
de una clase, la cual puede tener definida una serie de
variables, segun lo que se tenga en la pagina. Mi duda es
que si esa clase se ejecuta por completo (con
inicializacion de variables que estean definidas como
variables globales y todo) cada vez que se produce un
evento en la pagina como puede ser el accionamiento de un
boton, la marca de un CheckBox, ... Porque si esto es asi,
las variables que tengas como variables globales a la
clase, se estarian inicializando de cada vez, perdiendo
asi los valores que se le habian asignado en la primera
vez que se cargara la pagina en el metodo Page_Load (en el
caso de que asi fuera), o los valores que se le hubieran
asignado en algun otro metodo. Me podeis solventar la
duda?????

Muchas Gracias!!!!!

Preguntas similares