Sessions ASP.Net Tutorial

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs"  Inherits="_Default" %>



    Session State


    
    

        
                 OnClick="Button1_Click" />
        
                 NavigateUrl="NextPage.aspx">Next Page
    

    


File: Default.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : SmartSessionPage 
{
    protected void Button1_Click(object sender, EventArgs e)
    {
        string[] names = TextBox1.Text.Split(' ');
        Person p = new Person();
        p.firstName = names[0];
        p.lastName = names[1];
        Session["myperson"] = p;
    }
}
File: NextPage.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="NextPage.aspx.cs" Inherits="Retrieve" %>



    Untitled Page


    
    

    
    

    


File: NextPage.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
[Serializable]
public class Person
{
   public string firstName;
   public string lastName;
   public override string ToString()
   {
      return String.Format("Person Object: {0} {1}", firstName, lastName);
   }
}
public class SmartSessionPage : System.Web.UI.Page
{
    private const string MYPERSON = "myperson";
    public Person MyPerson
    {
        get
        {
            return (Person)Session[MYPERSON];
        }
        set
        {
            Session[MYPERSON] = value;
        }
    }
}
public partial class Retrieve : SmartSessionPage
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Person p = MyPerson;
        Response.Write(p); //ToString will be called!
    }
}