ComponentOne WebData for ASP.NET:WebDataObjects for ASP.NET Task-Based Help > Using the Session Cache

Using the Session Cache

To find data in a session cache and save changes there when data is changed, complete the following steps. Note that in this example a DataList was created and bound to a C1WebDataSet.

1.   Add a DataList and C1WebDataSet to your project.

2.   Add the following code to your Page_Load event to find data in the session cache, if it is there:

      Visual Basic

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

 

    ' try to find data in session cache first

    If Not SessionCache.Fill(C1WebDataSet1) Then

    ' not found in session cache, fetch from the database

        C1WebDataSet1.Fill()

    ' save changes in session cache every time you change data in the data set

            SessionCache.SaveData(C1WebDataSet1)

    End If

 

End Sub

      C#

private void Page_Load(object sender, System.EventArgs e)

   {

       // try to find data in session cache first

       if (!SessionCache.Fill(c1WebEmployeesDataSet))

      {

           // not found in session cache, fetch from the

           // database

           c1WebEmployeesDataSet.Fill();

           // save changes in session cache every time

           // you change data in the data set

           SessionCache.SaveData(c1WebEmployeesDataSet);

       }

   }

3.   To save changes in session cache every time you change data in the data set, add the following code:

      Visual Basic

Public Sub DataList1_Update(ByVal sender As Object, ByVal e As DataListCommandEventArgs)

    ' save changes in session cache every time you change

    ' data in the data set

    SessionCache.SaveData(C1WebDataSet1)

End Sub

      C#

public void DataList1_Update(Object sender, DataListCommandEventArgs e)

    {

        // save changes in session cache every time you

        // change data in the data set

        SessionCache.SaveData(c1WebEmployeesDataSet);

        DataList1.EditItemIndex = -1;

        BindList();

    }

4.   Clean up the cache files when a session is closed. Enter the following code in the Global.asax:

      Visual Basic

Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)

SessionCache.DeleteFiles(Me)

End Sub

      C#

protected void Session_End(Object sender, EventArgs e)

{

SessionCache.DeleteFiles(this);

}

  Sample Available

For additional information see the UsingSessionCache sample which is available for download from the ComponentOne HelpCentral Sample page.


Send comments about this topic to ComponentOne.
Copyright © 1987-2010 ComponentOne LLC. All rights reserved.