Costa
Costa

Reputation: 4095

Cache user control

The problem of ouputcaching is avoiding accessing the object, it is cached and it will not be processed at ALL and it is a HTML. for example, what if I want to post back to initialize countries drop down list with specific selection, I don't want to go back and rebuild the whole control and rebind to a collection of countries to just intialize the contol to a certain country.

Output caching will not solve the problem because it caches the HTML, not the object, the object will be null, I can't manipulate it.

Is there away to cache the server object rather than caching its output html?

If u don't think this is possible please reply back, so I know that it is impossible if alot of people say so.

Thanks

Upvotes: 1

Views: 115

Answers (1)

Rex M
Rex M

Reputation: 144122

It's quite possible - just use the HttpRuntime cache:

HttpRuntime.Cache.Add("myKey", myCountryList);

And then fetch the object back out:

CountryList myCountryList = HttpRuntime.Cache["myKey"] as CountryList;
if(myCountryList == null)
{
    //the object isn't in cache
}

This is the most simple usage - the cache is fairly robust and supports some more complex behaviors like invalidation, callbacks, etc. which is all covered in the link above.

Upvotes: 1

Related Questions