Ciao a tutti,
premetto che sono un neofita in ASP.NET ma me la cavo piuttosto bene con Java.
Sto mettendo mano per la prima volta alla programmazione ad oggetti con .NET e volevo provare a creare un istanza di una classe e salvarla in sessione così:
nel file Global.asax la istanzio all'avvio di una nuova sessione utente:
poi da un code-behind qualunque la utilizzo nel Page_Load() così:Codice PHP:protected void Session_Start(Object sender, EventArgs e)
{
CandidateInfo ci = new CandidateInfo();
ci.setName(DateTime.Now.ToString());
Session["CandidateInfo"] = ci;
}
Il problema è che i controlli input/asp:TextBox non assumono il valore aggiornato dopo il PostBack...Codice PHP://Prelevo l'oggetto dalla sessione
CandidateInfo ci = (CandidateInfo)Session["CandidateInfo"];
//Valorizzo le varie input con i valori di sessione
first_name.Text = ci.getFirst_Name(); //asp:TextBox
surname.Value = ci.getSurname(); //HTML Input
address.Value = ci.getAddress(); //HTML Input
if(IsPostBack)
{
// Dopo che l'utente ha smanipolato il form, salvo i nuovi valori nella classe in sessione
ci.setFirst_Name(first_name.Text);
ci.setSurname(surname.Value);
ci.setAddress(address.Value);
//Prova: vediamo se forzando la riassegnazione funziona (esito: no)
Session["CandidateInfo"] = ci;
msg.Text = "Post Back! first_name:" + first_name.Text;
}
Dove sbaglio?
Grazie,
L++![]()
![]()
![]()

Rispondi quotando