An implementation of the repository pattern for Entity Framework 6+ in c#