Должен ли EF& #39;s DbContext содержать все таблицы?

Я новичок в EF4, и я пытаюсь найти лучший способ создания мой класс DbContext (es ).

Есть ли проблема (, особенно с производительностью )при помещении всех моих таблиц/сущностей в один и только один класс DbContext, как в приведенном ниже коде?

public class AllInOneDb : DbContext
{
    public DbSet<Customer> Customers{ get; set; }
    public DbSet<Address> Addresses{ get; set; }
    public DbSet<Order> Order{ get; set; }
    public DbSet<Product> Products{ get; set; }
    public DbSet<Category> Categories{ get; set; }
    // and more and more entities...
}

Или мне следует моделировать свои классы на основе подмножеств функциональных возможностей?

public class CustomerDb : DbContext
{
    public DbSet<Customer> Customers{ get; set; }
    public DbSet<Address> Addresses{ get; set; }
    public DbSet<Order> Order{ get; set; }
}

public class ProductDb : DbContext
{
    public DbSet<Product> Products{ get; set; }
    public DbSet<Category> Categories{ get; set; }
    public DbSet<Order> Order{ get; set; } // look Order entity again!
}

Спасибо

6
задан Fabio 14 April 2012 в 02:02
поделиться