Ответ 1
DbContext
имеет метод для этого:
var set = context.Set<MyEntity>();
В LINQ to SQL я могу динамически создать репозиторий, используя DataContext.GetTable<T>
. Есть ли аналогичный способ сделать это в Entity Framework 4, кроме объявления свойств на конкретном DbContext
? Например:
public MyDbContext: DbContext
{
public DbSet<MySet> MySets {get; set;}
}
Я хотел бы знать, как я могу создать/получить ссылку на MySets
динамически, как я могу с LINQ to SQL, как в:
var mySet = MyDbContext.GetTable<MySet>();
DbContext
имеет метод для этого:
var set = context.Set<MyEntity>();
Использование:
DbSet<MyEntity> set = context.Set<MyEntity>();
Или, если вы не можете использовать общий метод:
DbSet set = context.Set(
typeof( MyEntity )
);
Не беспокойтесь о второй загрузке и дублировании POCO. Наборы кэшируются внутри контекста.