Con due istanze diverse come pretendi di avere un ritorno ?
In altre parole, nel SET dai un nome ad un oggetto di tipo persona, ma nel GET stai interagendo con un NUOVO oggetto di tipo persona, ovvio che ti ritorna il default che hai impostato...
Secondo me dovresti fissare meglio i concetti cardine, l'esempio non ha molto senso ... :master: Scusa la sincerità
Potresti fare così (ma solo per metterci una pezza)
Se per prima cosa clicchi sul bottone Get ti ritorna "default nome" perche' non hai impostato nulla.codice:PERSONA.VB Public Class persona Protected suonome As String Protected suolavoro As String Public Property nome() Get Return suonome End Get Set(ByVal value) suonome = value End Set End Property Public Property lavoro() Get Return suolavoro End Get Set(ByVal value) suolavoro = value End Set End Property Public Sub New() suonome = "default nome" suolavoro = "default nome" End Sub End Class PAGINA.ASPX: <form id="form1" runat="server"> <div> <asp:Button ID="butGet" runat="server" Text="Get" /> <asp:Button ID="butSet" runat="server" Text="Set" /> </div> </form> PAGINA.ASPX.VB Dim testpersona As persona Protected Sub ButGet_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButGet.Click testpersona = New persona If Not isnothing(session("objPersona")) Then testpersona = CType(session("objPersona"), persona) End If Response.Write("Il giardiniere è: " & testpersona.nome) End Sub Protected Sub ButSet_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButSet.Click testpersona = New persona testpersona.nome = "Giuseppe" testpersona.lavoro = "Giardiniere" Response.Write("Hai impostato: " & testpersona.nome & " - " & testpersona.lavoro) Session("objPersona") = testpersona End Sub
Se clicchi invece dopo aver settato le proprietà con il bottone Set, ti torna "Giuseppe".
Spero ti sia utile per capire che devi interagire con la stessa istanza per ottenere le proprietà che hai impostato...![]()


Rispondi quotando