I've been playing around with Code First EF implementations for awhile now and by far the best implementation I've seen is a framework by Huy Rua. It has the following functionality baked in: True Separation of Concerns for entities (no need for a data annotations dependency). A Generic Repository. This should do the trick for 80% of your standard CRUD operations without the need for repo's per entity. Supports multiple DbContext's and builds them dynamically. And finally a straightforward Specification pattern implementation. I use it as a base data layer for all my projects.