HttpContext.Current.ApplicationInstance.Application vs HttpContext.Current.Application

3k views Asked by At

If I want to store some Objects to share across pages and session which one should I use?

HttpContext.Current.ApplicationInstance.Application or HttpContext.Current.Application.

I was using HttpContext.Current.Application but just got confused between the two.

2

There are 2 answers

1
scartag On BEST ANSWER

They both refer to the same thing, the HttpApplicationState

0
spoulson On

Application and ApplicationInstance.Application are two versions of the same HttpApplicationState object.

From the HttpApplicationState reference:

A single instance of an HttpApplicationState class is created the first time a client requests any URL resource from within a particular ASP.NET application virtual directory. A separate single instance is created for each ASP.NET application on a Web server. A reference to each instance is then exposed via the intrinsic Application object.

To summarize:

  • Application object is global to the web server.
  • ApplicationInstance.Application object is local to the application the request refers to. (e.g. site or virtual directory application)

This is further explained in this blog post.