Caching Made Simple - A Practical Birdseye Overview
page 7 of 8
by Michael Libby
Average Rating: 
Views (Total / Last 10 Days): 140147/ 94

How to Use Fragment Caching

Fragment caching is much like output caching except that it refers to caching portions of web pages and only at the server. In ASP.NET this is done by encapsulating portions of pages in user controls and then specifying caching rules. There can be any number of user controls on a web page, and each user control maintains its own caching. Fragment caching uses the same attributes of the OutputCache page directive and the HttpCachePolicy class, with the exception of using the VaryByControl parameter to create variations of the page.

In the following example we will duplicate the previous Output Caching example, except we will use a user control instead of a web form.


1.      Add a new user control to your Visual Studio C# application.

2.      Follow steps 2 through 5 in the previous How to Use Output Caching example, except use a user control instead of a web form.

3.      Replace the Page directive OutputCache at the top of the user control’s HTML as follows.


<%@ OutputCache duration="3600" VaryByParam="ddlCountry"%>


<%@ OutputCache duration="3600" VaryByControl="ddlCountry"%>

Note: if not using the VaryByControl parameter then the VaryByParam attribute will be used:

<%@ OutputCache duration="3600" VaryByParam="none"%>

4.      Place the user control on a web form.

5.      Visit the web page from several different computers and you will see the same data and report time for each country.


View Entire Article

User Comments

Title: Good one though problem with firefox   
Name: dotnetguts
Date: 2009-05-03 9:09:10 AM
Thanks for good article, I have tried instruction mentioned in article, but it is still not working for firefox, any idea? to make it work.

Title: good one   
Name: vijay chand
Date: 2009-02-09 4:15:13 AM
The above article has given me some knowledgeable thing
Title: REg. getting URLs of all visited Sites   
Name: Ad
Date: 2007-08-13 9:24:34 AM

In the txt file, I only get the URL of this website, nothing more. Could you let me know what I m missing.
This is what I get --;/CachingMadeSimple/OutputCachingClient.aspx;8/13/2007 6:46:57 PM

Also, could u explain the 2 minute time limit u hv put?
Title: Software Enginner   
Name: Chintan Mehta
Date: 2007-07-02 9:55:09 AM
This tutorial is very good but i want tutorial which describe actual in which scenario we have to use which type of caching. say in which condition fragment caching is usefull, in which condition data caching is usefull please describe with example if it is possible.

Title: Software Engineer   
Name: Mudassar
Date: 2006-08-10 5:12:29 PM
Title: Great Article   
Name: Susan Dawson (Israel)
Date: 2006-04-08 9:17:06 PM
This is one of many great articles you've written. I enjoy your easy to follow step by step articles. You are on my must read list.

Title: Re: Images without roundtrip   
Name: Michael Libby
Date: 2006-01-31 10:12:32 AM
Hi Fabio,
Regarding, "Copy your images to the ImagesCached directory and change all corresponding HTML references". This means that if your image directory changed then you must also change the source for your HTML Image Tag. For example, change the HTML IMG tag's src from src='NonCachedImgDir/MyImg.jpg' to src='CacheImgDir/MyImg.jpg'.
Title: images without roundtrip   
Name: Fabio Rauh
Date: 2006-01-31 7:21:57 AM
Hi, I read your article and I´ve a doubt about how to cache images without roundtrip modification checking
I did not understand the step 7, what u mean "change" all corresponding html references. What do I have to do?
Thank you

Product Spotlight
Product Spotlight 

Community Advice: ASP | SQL | XML | Regular Expressions | Windows

©Copyright 1998-2021  |  Page Processed at 2021-12-08 1:28:22 PM  AspAlliance Recent Articles RSS Feed
About ASPAlliance | Newsgroups | Advertise | Authors | Email Lists | Feedback | Link To Us | Privacy | Search