Wrox Programmer Forums
Go Back   Wrox Programmer Forums > Visual Basic > VB.NET 1.0 > VB.NET 2002/2003 Basics
|
VB.NET 2002/2003 Basics For coders who are new to Visual Basic, working in .NET versions 2002 or 2003 (1.0 and 1.1).
Welcome to the p2p.wrox.com Forums.

You are currently viewing the VB.NET 2002/2003 Basics section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
 
Old November 13th, 2007, 05:57 PM
Authorized User
 
Join Date: Sep 2007
Posts: 20
Thanks: 0
Thanked 0 Times in 0 Posts
Default Filtering Data after its been cached

I have a web app that contains 5 listboxes with data that is loaded on page_load. In trying to develop a web app that has increased performance by keeping frequently accessed or expensive data in memory rather than relying on repeated database calls, I've created dataSet caches for each listbox. An example of one of the caches is given below:

     Public Sub LoadDistrictData(ByVal e As String)
      If Cache("Dist") Is Nothing Then
         Dim dsDist As New DataSet
         dsDist = getDistrict()
         Cache.Insert("Dist", dsDist, Nothing, DateTime.Now.AddMinutes(10), Nothing)
      End If

      Dim dvDistrict As New DataView(Cache("Dist").Tables(0))
      lstDistrict.DataSource = dvDistrict
      lstDistrict.DataValueField = "Distrc"
      lstDistrict.DataTextField = "cDistrict" '"DIDSNM"
      lstDistrict.DataBind()
   End Sub

    Function getDistrict() As DataSet
      Dim dsDist As New DataSet
      If Cache("Dist") Is Nothing Then
         Dim daDistrict As New SqlDataAdapter("sp_SelectDistrict2", sqlConnWhere)
         daDistrict.SelectCommand.CommandType = CommandType.StoredProcedure
         Dim workParam2 As SqlParameter = Nothing
         workParam2 = New SqlParameter("@regID", System.Data.SqlDbType.VarChar)
         workParam2.Direction = ParameterDirection.Input
         workParam2.Value = ViewState("Region")
         daDistrict.SelectCommand.Parameters.Add(workParam2 )
         Try
            daDistrict.Fill(dsDist)
         Catch ex As Exception
            lblInfo.Text = "Database error: " & ex.Message
            Exit Function
         End Try
         Cache.Insert("Dist", dsDist, Nothing, DateTime.Now.AddMinutes(10), Nothing)
      End If
      Return Cache("Dist")
   End Function

    Private Sub lstDistrict_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lstDistrict.SelectedIndexChanged
      Dim x As Integer
      Dim distsel As Integer = 0
      Dim dstval As String
      For x = 0 To lstDistrict.Items.Count - 1
         If lstDistrict.Items(x).Selected = True Then
            dstval = dstval + Convert.ToString(lstDistrict.Items(x).Value)
            distsel = distsel + 1
         End If
      Next
      ViewState("distsel") = distsel
      ViewState("Territory") = dstval
      LoadTerritoryData(ViewState("Territory"))
      ......other subs
   End Sub


Both the data and cache load correctly. However, a selection in one listbox (the first listbox) is suppose to filters data in the remaining 4 listboxes. But since my cache is not equal to NOTHING then the updated ViewState("Region") (created on SelectedIndexChange of the first listbox) is not used as the parameter which will filter the remaining listboxes. Instead the previous Cache is used. I could set the cache equal to NOTHING or Cache.Remove("Dist") on selectedindexchange, but that would require a hit to the server again (which is what I'm trying to avoid). Is there a way to FILTER the EXISTING dataSet Cache? I guess I'm going about this the wrong way. Any help would be greatly appreciated.

Thanks






Similar Threads
Thread Thread Starter Forum Replies Last Post
Filtering XML data aldwinenriquez XSLT 7 August 25th, 2008 03:24 AM
data filtering from combobox MAKO C# 4 June 1st, 2006 03:54 AM
Filtering User data donydog Classic ASP Databases 0 February 6th, 2006 09:33 PM
Need Help on Filtering duplicated data fanyin XSLT 2 November 4th, 2004 08:06 PM
Filtering data by code rodrigoss BOOK: Professional SQL Server Reporting Services ISBN: 0-7645-6878-7 2 June 23rd, 2004 02:06 PM





Powered by vBulletin®
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) 2020 John Wiley & Sons, Inc.