рискуя быть полностью ленивым, то, что вы хотите реализовать, называется шаблоном хранилища, зацените Huyrya как хорошую статью.
Также возможно расширить классы сущностей, чтобы они возвращали экземпляры или списки самих себя (шаблон синглтона). Ака:
public partial class FOO : FOO
{
public IEnumerable<Foo> GetFooList()
{
using (var context = new FooEntities())
{
return // YOU CODE TO GET LIST OF FOO
}
}
}
Или что-то в этом роде (синтаксис кода неправильный, но должен дать вам общее представление). Если ваши классы сущностей собираются реализовать подобные методы, абстрагируйте их в контракт интерфейса и получите ваши классы частичных сущностей для реализации этого интерфейса.