Store your Object in Session (C#) : Session Variables « Session Cookie « ASP.Net

Store your Object in Session (C#)

<%@ Page language="c#" src="SessionStateExample.aspx.cs" AutoEventWireup="false" Inherits="SessionStateExample" %>
    <form id="Form1" method="post" runat="server">
      <asp:Label id="lblSession" style="Z-INDEX: 101; LEFT: 24px; POSITION: absolute; TOP: 32px" runat="server" Width="232px" Height="61px" Font-Size="Medium" Font-Names="Verdana" Font-Bold="True"></asp:Label>
      <DIV style="BORDER-RIGHT: 2px groove; BORDER-TOP: 2px groove; Z-INDEX: 105; LEFT: 16px; BORDER-LEFT: 2px groove; WIDTH: 576px; BORDER-BOTTOM: 2px groove; POSITION: absolute; TOP: 248px; HEIGHT: 160px; BACKGROUND-COLOR: lightyellow" ms_positioning="GridLayout">
        <asp:ListBox id="lstItems" style="Z-INDEX: 106; LEFT: 16px; POSITION: absolute; TOP: 16px" runat="server" Width="208px" Height="128px"></asp:ListBox>
        <asp:Button id="cmdMoreInfo" style="Z-INDEX: 106; LEFT: 248px; POSITION: absolute; TOP: 24px" runat="server" Width="120px" Height="24px" Text="More Information"></asp:Button>
        <asp:Label id="lblRecord" style="Z-INDEX: 106; LEFT: 248px; POSITION: absolute; TOP: 64px" runat="server" Width="272px" Height="61px" Font-Size="X-Small" Font-Names="Verdana" Font-Bold="True"></asp:Label></DIV>

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

  public class SessionStateExample : System.Web.UI.Page
    protected System.Web.UI.WebControls.Label lblSession;
    protected System.Web.UI.WebControls.ListBox lstItems;
    protected System.Web.UI.WebControls.Button cmdMoreInfo;
    protected System.Web.UI.WebControls.Label lblRecord;
    private void Page_Load(object sender, System.EventArgs e)
      if (!this.IsPostBack)
        // Create Product objects.
        Product piece1 = new Product("Econo Sofa", 
          "Acme Inc.", 7.9M);
        Product piece2 = new Product("Pioneer Table", 
          "Heritage Unit", 8.7M);
        Product piece3 = new Product("Retro Cabinet", 
          "Sixties Ltd.", 3.1M);

        // Add objects to session state.
        Session["Product1"] = piece1;
        Session["Product2"] = piece2;
        Session["Product3"] = piece3;

        // Add rows to list control.

      // Display some basic information about the session.
      // This is useful for testing configuration settings.
      lblSession.Text = "Session ID: " + Session.SessionID;
      lblSession.Text += "<br>Number of Objects: ";
      lblSession.Text += Session.Count.ToString();
      lblSession.Text += "<br>Mode: " + Session.Mode.ToString();
      lblSession.Text += "<br>Is Cookieless: ";
      lblSession.Text += Session.IsCookieless.ToString();
      lblSession.Text += "<br>Is New: ";
      lblSession.Text += Session.IsNewSession.ToString();
      lblSession.Text += "<br>Timeout (minutes): ";
      lblSession.Text += Session.Timeout.ToString();


    #region Web Form Designer generated code
    override protected void OnInit(EventArgs e)
      // CODEGEN: This call is required by the ASP.NET Web Form Designer.
    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InitializeComponent()
      this.cmdMoreInfo.Click += new System.EventHandler(this.cmdMoreInfo_Click);
      this.Load += new System.EventHandler(this.Page_Load);


    private void cmdMoreInfo_Click(object sender, System.EventArgs e)
      if (lstItems.SelectedIndex == -1)
        lblRecord.Text = "No item selected.";
        // Construct the right key name based on the index.
        string key = "Product" +
          (lstItems.SelectedIndex + 1).ToString();

        // Retrieve the Product object from session state.
        Product piece = (Product)Session[key];

        // Display the information for this object.
        lblRecord.Text = "Name: " + piece.Name;
        lblRecord.Text += "<br>Manufacturer: ";
        lblRecord.Text +=  piece.Description;
        lblRecord.Text += "<br>Cost: $" + piece.Cost.ToString();


  public class Product
    public string Name;
    public string Description;
    public decimal Cost;

    public Product(string name, string description, 
      decimal cost)
      Name = name;
      Description = description;
      Cost = cost;


Related examples in the same category

1.Use session to store action time (
2.Get Cookie value and assign to the label in C#
3.Get Cookie value (C#)
4.Session Set message (C#)
5.Session get Message (C#)
6.Use Session item (
7.Get all session keys (
8.Remove value from session value (
9.Remove all session values (
10.Remove session value by index (
11.Write value to session (
12.Add and get value from session (
13.Clear session values (
14.Copy session values (
15.Remove all session content (
16.Get session code page in VB (
17.Session item count (
18.Simple session data: set and retrieve
19.Pass variables with & sign (
20.Pass variables between pages (
21.Use session variables (
22.Setting values in session state (C#)
23.Setting values in session state (VB)
24.Get value from session in cross page posting (C#)
25.Get value from session in cross page posting(VB)