Can I use Session object by adding asp.dll to references?


I have some code from a guys here for training. I see the code that they have declared a Session object in VB! and have implemented a shoppng cart. they say they have some prob but i am not aware of the prob.

My query is can the Session object be created and used in VB?

thanx & regards,
Who is Participating?
rkot2000Connect With a Mentor Commented:
This is extremely useful if you would like to have direct access to the ASP intrinsic objects; for example, Application, Session, Response, Request, and Server.;en-us;Q238274

HOWTO: Access Session and Application Variables from Within a Visual Basic Component (Q230149);EN-US;q230149&GSSNB=1
Under .Net I think that there is a Session class, so, it's possibly .Net code.  But under VB6, no.  The code that you are seeing is probably ASP code, which is written in VB Script.  Looks very much like VB, but if it references a Session or Response objects then it is ASP.  
One other thought, there are objects in VB, such as MAPI objects that do have a Session object (I think that it's actually defined as a MAPISession though....)
Never miss a deadline with

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

you can't create a session object in vb(session is created by iis), but you can use it. you need to add references to your vb project.
rajivraj123Author Commented:
Thanx! :)

I have a class in VB with say 2 public variables. I create a object of this class, set the values of the variables and put in the session, as mentioned in those articles. Now, when I get the session variable in a ASP page, how can I type-cast the object from the session to the class I created in VB?

it's very bad idea to store an object with session:
full story :

Sessions and object references don't mix

If you plan on storing COM objects in the session object, you need to understand the performance implications. Most of the components created using Visual Basic 6.0 and even Visual C++ are single-threaded apartment (STA) components. The rules of COM dictate that the calls to an STA component ultimately need to execute on the same thread where the component was created.

Now, IIS maintains a pool of threads to service user requests. When an incoming request arrives, IIS picks the next free thread to process the request. Unfortunately, when you store an STA component in the session object, you have locked the session to a specific thread. Any further requests from that user session need to get routed to the original thread to satisfy the aforementioned rule. If the original thread is already busy processing another request, the new request will need to wait.

As an analogy, pretend on your first trip to the grocery store you went to aisle three for checking out. Now on every subsequent return to the grocery store you must always use aisle three, even when aisle three is crammed with shoppers and other aisles are open and available. Clearly, this can create problems.

p.s with asp you have late binding so you have something like this
dim x

set x=session("My_object")

rajivraj123Author Commented:
Agreed, but if I am implemeting a shopping cart, where wil I store the user-specific data? Isnt session the only way out?`
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.