Ciao a tutti,
sto iniziando a vedere come lavora la variabile Session in asp per cercare di fare qualcosina...
Ho pensato ad una cosa molto elementare, cioè mettere user e pass in due campi di una web form, metterli nella variabile session e poi farli stampare in un altra pagina richiamata da un bottone, senza controlli di validità, senza niente... solo per vedere come funziona il passaggio delle sessioni.
L'eccezione che salta è che l'oggetto della seconda pagina è nullo... quindi non trasmette nulla... vi posto il codice
Codice pagina Login.aspx:
... quel PostBackUrl è giusto??? :master:codice:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div> User:<asp:TextBox ID="txt_user" runat="server" Style="position: relative"></asp:TextBox> Pass:<asp:TextBox ID="txt_pass" runat="server" Style="position: relative"></asp:TextBox> <asp:Button ID="btn_login" runat="server" OnClick="btn_login_Click" Style="position: relative" Text="Login" PostBackUrl="~/Info.aspx"/></div> </form> </body> </html>
Codice della pagina in c#
...la mia classe utente, che quella che poi vado a memorizzare nella sessione va bene messa lì? :master:codice:public partial class Login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btn_login_Click(object sender, EventArgs e) { Utente utente = new Utente(txt_user.Text, txt_pass.Text); Session["Utente"] = utente; } } public class Utente { public String User; public String Pass; public Utente(String user, String pass) { this.User = user; this.Pass = pass; } }
Codice della pagina Info (che prende i dati della Session e li stampa in due label):
Grazie a tutti per le dritte... io cerco di vedere qualche esempio in giro, se voi siete più veloci di me ve ne sono grato!!!codice:public partial class Info : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Utente utente = (Utente)Session["Utente"]; Label1.Text = utente.User; Label2.Text = utente.Pass; } }
Cià!![]()

Rispondi quotando