Bonjour
ce code ci-dessous fonctionne parfaitement (sans la dernière ligne !). Les éléments de la liste<T> sont conservés par la variable Session après chaque postback. Mais je me demande comment cela peut fonctionner sans la dernière ligne : Session["time"] = time ; . Quand un nouvel élément est ajouté à la liste, si Session["time"] n'est pas présente, alors elle n'est pas mise à jour et ne contient pas le nouvel élément. Selon moi, la ligne time = (List<int>)Session["time"] ; ne peut rien contenir.
Une explication à cela : pourquoi la ligne Session["time"] = time ; n'est-elle pas nécessaire ?
Merci
R.
using System;
using System.Collections.Generic;
public partial class WebForm : System.Web.UI.Page
{
List<int> time = new List<int>();
protected void Page_Load(object sender, EventArgs e)
{
TextBox1.Focus();
if (!Page.IsPostBack)
{
Session["time"] = time; // vide
}
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
Label1.Text = "";
time = (List<int>)Session["time"];
time.Add(Convert.ToInt32(TextBox1.Text));
time.Sort();
for (int i=0;i< time.Count;i++)
Label1.Text += time[i].ToString() + " ";
TextBox1.Text = "";
//Session["time"] = time; // marche sans cette ligne
}
}
Partager