Take a look at this link.
Caching Data with the SqlDataSource Control[
^].
It works based on the setting on the database connection string.The setting enables the database base(MS SQL Sever) to retrieve data with in certain catching time interval. This is useful when you want to avoid a re-run highly resource intensive queries.
I hope this helps you well.