Il s'agit d'une question sur asp.net WebForms et l'état de session. Je sais que c'est probablement un cas où MVC est meilleur, mais j'ai besoin d'utiliser WebForms.
Dans l'événement OnLoad de ma page, j'initialise un objet et ses propriétés (un appel à une base de données, puis une logique pour les propriétés). J'utilise cet objet pour remplir les contrôles de la page, par exemple lblTitle.text = myObj.Title.
Cette page comporte également une zone de saisie dans laquelle l'utilisateur doit entrer des informations, puis appuyer sur le bouton "Enregistrer". Cette opération appelle une fonction utilitaire qui écrit le contenu de la zone de texte dans un fichier et l'enregistre. De plus, elle doit l'enregistrer dans un fichier portant le nom contenu dans myObj.Title.
Voici mon problème - à cause de l'aspect sans état des WebForms, après le chargement de la page, monObj a disparu.* Ce qui signifie que je ne peux pas faire quelque chose de facile comme ceci lors de la sauvegarde : Util.save(contentsoftextbox, myObj.Title).
J'ai donc résolu le problème en écrivant la valeur de myObj.Title dans une variable de session (Session.Add["title"] = myObj.Title dans l'événement OnLoad de la page. Ensuite, lorsque la fonction de sauvegarde est appelée, j'utilise cette variable de session comme deuxième paramètre.
Merci d'avoir lu jusqu'ici.
Ma question est la suivante :
Cela ressemble à une façon inutilement complexe de faire le travail. Est-ce le cas ? Que pourrais-je faire d'autre pour accomplir cette tâche ?
*Droit ?