jimi, you cache a object! This object could be a List/Dataset/String any object!
ADH, finally i understand you!
You are thinking (wrongly) two things:
-Cache in DAL is wrong (yes it is)
-CALL dataset to BLL is wrong (no it's not)
If you google some pages for "dataset/datatable vs list(of T)" we will read hundred of people defending one and other...
See this: http://weblogs.asp.net/bsimser/archi...inglist-t.aspx
We need to import system.Generic in bll to run list! So... why are you so reticent about import system.data
Data shouldn't be used only in DAL!
All your site layers is about DATA ;)
For example I imported to system.generics in some of aspx code-behind! Because in my ModeratorsAdmin Page i have a gridview inside 3 repeaters!
So i need to imports system.generic to catch my list(of T) from code-behind (and BLL)
If i used Datasets for all I needed to import system.data in DAL, in BLL and in some codebehind pages from UI!!
If you need to choice between (import system.data in BLL or Cache in DAL) please import System.Data in BLL ;)
I hope it helped you!