Create a DbSet<T> dynamically in Entity Framework?

skjagini picture skjagini · Mar 15, 2011 · Viewed 36.3k times · Source

In LINQ to SQL, I can create a repository dynamically using DataContext.GetTable<T>. Is there a similar way to do this in Entity Framework 4 other than declaring the properties on the specific DbContext? For example:

public MyDbContext: DbContext
{
    public DbSet<MySet> MySets {get; set;}
}

I would like to know how can I create/get a reference to MySets dynamically as I can with LINQ to SQL as in:

var mySet = MyDbContext.GetTable<MySet>();

Answer

Ladislav Mrnka picture Ladislav Mrnka · Mar 15, 2011

DbContext has method for this:

  var set = context.Set<MyEntity>();