Caching Data in the Architecture  Original post here:   As we
saw in the preceding tutorial, caching the ObjectDataSource’s
data is as simple as setting a couple of properties.
Unfortunately, the ObjectDataSource applies caching at the
Presentation Layer, which tightly couples the caching policies
with the ASP.NET page. One of the reasons for creating a layered
architecture is to allow such couplings to be broken. The
Business Logic Layer, for instance, decouples the business logic
from the ASP.NET pages, while the Data Access Layer decouples
the data access details. This decoupling of business logic and
data access details is preferred, in part, because it makes the
system more readable, more maintainable, and more flexible to
change. It also allows for domain knowledge and division of
labor – a developer working on the Presentation Layer doesn’t
need to be familiar with the database’s details in order to do
her job. Decoupling the caching policy from the Presentation
Layer offers similar benefits.  In this