how to retrieve data from a session table

mazez1971

Member
Joined
Dec 23, 2009
Messages
13
Programming Experience
Beginner
I developing an invoice page where user will select Product from a combo box (approx. 500 + item). I am loading product Name, Product ID, sales price in a session Table. After selecting the product, a textbox value will Sales Price. But it is taking so much time.

On page load event:
VB.NET:
                PBProductID.DataSource = Session("TableProductAll")
                PBProductID.DataBind()

Session("TableProductAll") is filled when user first login to the system in the login page
On PBProductID_SelectedIndexChanged event:

VB.NET:
               Dim strCriteria As String = ""
               PBSalesPrice.Text = 0
               strCriteria = " ProductID = '" & PBProductID.Text & "'"
               Dim SearchRow As DataRow() = Session("TableProductAll").Select(strCriteria)
               If SearchRow.Count > 0 Then PBSalesPrice.Text = SearchRow(0)("pPriceSales").ToString

How to reduce the time at PBProductID_SelectedIndexChanged event (at present it taking apprx. 45 sec or more)
Looking for a better solution of way to fill a combo box and retrieve sales price from that table after selecting the product ID.
 
Last edited:
I'm not 100% sure, but setting the datasource of a server side object to a client side session object is probably going to be causing some roundtrips that'll give you the latency you're seeing.

Would it be worth trying creating a server side datatable using the contents of your session object, then use that datatable as the datasource?

Obviously .net could take a copy of the session object, which would then mean the datatable route will do nothing - worth a try though.
 
Back
Top