I am suing SqlDataReader to read data from SQL Server. However sometimes I want to cache my data in memory as read only lightweight connection free object. I couldn't find any options for me in the BCL. Do I need to write my own implementation of such container, or are any available?
What alternatives do I have for storing data from database in lightweight form? For me DataTable is not a candidate at all.
EDIT:
When I know what data I am selecting a can easily use LINQ to transform my reader into List of or something. But instead I would like to be able to cache data which I don't know the structure of.