Tutoriel de gestion de session ASP.NET [Exemple]
Gestion des sessions ASP.NET
Le protocole HTTP sur lequel fonctionnent toutes les applications Web est un protocole sans état. Par apatride, cela signifie simplement que les informations ne sont pas conservées d’une demande à l’autre.
Par exemple, si vous aviez une page de connexion comportant 2 zones de texte, une pour le nom et l’autre pour le mot de passe. Lorsque vous cliquez sur le bouton Connexion sur cette page, l'application doit s'assurer que le nom d'utilisateur et le mot de passe sont transmis à la page suivante.
Dans ASP.Net, cela se fait de différentes manières. La première méthode consiste à utiliser un concept appelé ViewState. C'est ici qu'ASP.Net stocke automatiquement le contenu de tous les contrôles. Cela garantit également que cela soit transmis à la page suivante. Cela se fait via une propriété appelée ViewState.
Il n'est pas idéal pour un développeur de modifier quoi que ce soit dans l'état d'affichage. En effet, cela doit être géré uniquement par ASP.Net.
Objet Session ASP.NET
L’autre méthode consiste à utiliser un objet appelé « objet de session ». L'objet Session est disponible tout au long du cycle de vie de l'application. Vous pouvez stocker n'importe quel nombre de paires clé-valeur dans l'objet Session. Ainsi, sur n'importe quelle page, vous pouvez stocker une valeur dans l'objet Session via la ligne de code ci-dessous.
Session["Key"]=value
Ceci stocke la valeur dans un objet Session et la partie « clé » est utilisée pour donner un nom à la valeur. Cela permet de récupérer la valeur ultérieurement. Pour récupérer une valeur, vous pouvez simplement émettre l'instruction ci-dessous.
Session["Key"]
Exemple d'objet Session ASP.NET
Dans notre exemple, nous allons utiliser l'objet Session pour stocker le nom saisi dans le champ de zone de texte Nom de la page. Nous allons ensuite récupérer cette valeur et l'afficher sur la page en conséquence. Ajoutons le code ci-dessous au fichier Demo.aspx.cs.
protected void btnSubmit_Click(object sender,EventArgs e) { Session["Name"] = txtName.Text; Response.Write(Session["Name"]); lblName.Visible = false; txtName.Visible = false; 1stLocation.Visible = false; chkC.Visible = false; chkASP.Visible = false; rdMale.Visible = false; rdFemale.Visible = false; btnSubmit.Visible = false; }
Explication du code : -
- La première ligne de code prend la valeur du contrôle de zone de texte Nom et la stocke dans l'objet Session. En spécifiant le code de Session["Name"] , nous donnons à la propriété un nom appelé "Name". En spécifiant un nom pour la propriété, il devient plus facile de la récupérer ultérieurement.
- La ligne de code suivante récupère la valeur stockée de l'objet Session. Il écrit ensuite cette valeur via la méthode « Response.Write » au client.
- Enfin, nous rendons invisibles tous les contrôles du formulaire. Si nous ne le faisons pas, tous les contrôles ainsi que nos valeurs de réponse seront affichés ensemble.
Une fois que vous avez apporté les modifications ci-dessus, vous verrez le résultat suivant
Sortie :
À partir du résultat, vous pouvez voir que la valeur Session de name a été récupérée et affichée dans le navigateur.
Résumé
- La gestion des sessions est un moyen d'entrer ASP.net pour garantir que les informations passent d'une page à l'autre.
- La propriété d'état d'affichage d'une page permet de transmettre automatiquement les informations des contrôles d'une page à l'autre.
- L'objet 'Session' est utilisé pour stocker et récupérer des valeurs spécifiques dans une page Web.