none
Ayuda "Aplicacion web: Mantener valor de label" en Vb.Net RRS feed

  • Pregunta

  • Hola que tal,

    Estoy realizando una pagina web donde hay un label que dice 0 y al tocar un boton este suma 1 (es decir si se tocase el boton 100 veces este label que antes era 0, seria ahora 100). El problema es que no se como hacer que ese valor se mantenga, es decir, el problema esta en que al cargar la pagina denuevo, el valor del label vuelve a cero. Si yo entro y clickeo 10 veces el label correspondiente muestra 10, pero al cerrar y volver a abrir la pagina vuelve a 0, o tambien si entra una persona desde otra pc, tambien estaria en 0.

    Espero haberme explicado bien. Muchas gracias de antemano.

    martes, 4 de abril de 2017 5:45

Respuestas

  • Cuando dices que "si entra una persona desde otra pc, tambien estaria en 0", ¿esto es lo que quieres o NO es lo que quieres? Es decir, ¿quieres que el label lleve un contador separado por cada usuario, o uno global para el total de todos los usuarios? Si es esto último, tal como creo haber entendido, entonces puedes salvar el valor en el objeto Application. En el Click del botón pondrías esto:

    Label1.Text = (Int32.Parse(Label1.Text)+1).ToString()

    Application["MiContador"] = Label1.Text

    Y en el Page_Load recuperarías el valor así:

    Label1.Text = Application["MiContador"]

    Probablemente deberías inicializarlo a 0 en el Application_Start en el Globla.asax:

    Application["MiContador"] = "0"

    Nótese que esto se conserva en la memoria del servidor. Si quieres que el valor persista cuando se apaga la aplicación web, entonces tendrás que salvarlo en disco o en una base de datos.

    • Marcado como respuesta Naqy martes, 4 de abril de 2017 23:47
    martes, 4 de abril de 2017 7:14