Dans mon application web, je fais quelque chose de ce genre pour lire les variables de session:
if (HttpContext.Current.Session != null && HttpContext.Current.Session["MyVariable"] != null)
{
string myVariable= (string)HttpContext.Current.Session["MyVariable"];
}
Je comprends pourquoi il est important de vérifier pourquoi HttpContext.Actuel.Session["Mavariable"] est null (la variable n'aurait pas été stocké dans la Session ou la Session a été remis à zéro pour diverses raisons) mais pourquoi ai-je besoin de vérifier si HttpContext.Actuel.La Session est nulle?
Ma compréhension est que la session est créé automatiquement par asp.net donc HttpContext.Actuel.Session doit jamais être null. Cette hypothèse est correcte? Si elle peut être nulle, ça veut dire que je devrais aussi vérifier avant de la stocker quelque chose:
if (HttpContext.Current.Session != null)
{
HttpContext.Current.Session["MyVariable"]="Test";
}
else
{
//what should be done in this case (if session is null)?
// is it possible to force the session to be created if it doesn't exist?
}