I was posting some comments in a related question about MVC caching and some questions about actual implementation came up. How does one implement a Model-level cache that works
I would recommend that you look here for a comprehensive look at caching in ORM's including the problems and solutions that can be applied.
When dealing with caching data in an ORM, you generally have the following 3 problems to solve: