Pasar datos entre páginas web con session en ASP.NET C#

La manera de pasar datos entre páginas web con session en ASP.NET C# es una de las opciones que tenemos de comunicación entre las páginas.

Mediante la sesión de la página que el cliente está ejecutando podemos guardar datos mediante identificadores y recuperarlos desde otras páginas.

Para utilizar la propiedad session es necesario estar heredando los métodos de a clase Page, por defecto las páginas aspx lo heredan.

Agregar datos en el estado de la sesión

Creamos dos páginas en un proyecto webform de nombre PaginaUno.aspx y Paginados.aspx.

Podría interesarte Referencias entre proyectos modelo de capas  

En PaginaUno agregamos el siguiente código para agregar valores a la sesión actual:

Session["mensaje1"] = "Hola mundo";
  • Asignamos el identificador de la sesión como mensaje1.
  • El dato guardado de la sesión mensaje1 es “Hola mundo”.

Abrimos el archivo PaginaDos y agregamos el siguiente código para obtener los datos de la sesión:

string mensaje = Convert.ToString(Session["mensaje1"]);
  • Asignamos a una variable el valor de la sesión con identificador de mensaje1.
  • Es necesario convertir el valor de la sesión al tipo de dato requerido, si no se hace puede generar error.

Debes tomar en cuenta que cuando trabajas con datos en sesión pueden en algún evento limpiarse dichos datos.

Si los datos en sesión son eliminados al intentar capturarlos pueden generar errores, ya que su valor es null.

Para evitar algún error por la inexistencia de datos, es necesario validar que la sesión no sea nula con el siguiente código:

if (Session["mensaje1"] != null)
{
}
  • Únicamente indicamos que si la sesión es diferente de null realice las tareas.
Pasar datos entre páginas web con session en ASP

Podría interesarte Redireccionar desde el servidor en ASP.Net C#  

Observaciones

Puedes agregar varios valores en sesión, solo hay que especificar diferentes identificadores.

No es recomendable que agregues demasiados datos en sesión, para no afectar el rendimiento de la aplicación.

3 Comments

  1. Hola.
    Sabes como se hace para llamar desde una pagina HTML llamar una pagina web apsx enviando un parámetro por ejemplo 1

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *