We use page output caching in our ASP.Net website home page to make it appear load faster.
The caching time is very minimum(5 minutes) so that the data updations are reflected to users
within short time span. In the home page itself, We have a section called ‘Polls’ used for voting best answer for the question displayed.
In this section, poll results are displayed when a user has already voted and for users who haven’t voted,
the poll question has to be displayed. The issue is, when a user who has already voted has visited the home page, the
page is cached with poll results displayed. Within that 5 min’s caching time, when another user who
has not yet voted has accessed that page then for that user also results are only displayed instead
of poll question so the user is not able to vote for that poll.
To prevent this, we have tried out data caching technique where datatable for all sections in
home page is cached and the page is rendered. This technique still is not as fast as Page output caching and so our users does not desire this
technique. The loading time for both data caching is much higher when compared to page output caching.
We have also tried out substitution caching method where a part of the page alone gets reloaded even when the entire
page it cached. The most important issue in this caching method is we can use only HTML controls in that substitution
control. We have tried creating polls section with HTML controls only, still we get problems with AJAX update panel used
in other sections of the page.
Kindly guide me to resolve this issue. A part of the page(polls section) alone has to be reloaded for each user and other sections
has to be delivered from cache. This should happen without compromising performance of the page.
I have implemented polls section of the page in an iframe, the content inside the iframe does not get cached. Simple, temporary solution!!!