Ask the Expert

Sharing VB .NET objects without serialization methods

How can I share the object of a session with another session (without using serialization methods) in the Web service?
Store them in the Application bag instead. i.e.:

HttpContext.Current.Application["mydata"] = myobject;

If you need to modify the data, you can lock the application state bag so synchronize access to it:

HttpContext.Current.Application.Lock();
HttpContext.Current.Application["mydata"] = myobject;
HttpContext.Current.Application.UnLock();

This way only one thread at a time can modify the value.

This was first published in July 2004