当我使用带有 .dbml 文件的 LINQ 进行编程时,只有一个上下文。但是,当我创建一个 MVC 站点时,似乎每个实体都有单独的上下文(这是 MVC 教程向我展示的方式;使用“电影”上下文)。
我有:
public class AccountsContext : DbContext
{
public AccountsContext()
: base("DefaultConnection")
{
}
public DbSet<Account> Accounts { get; set; }
}
我有:
public class ClientsContext : DbContext
{
public ClientsContext()
: base("DefaultConnection")
{
}
public DbSet<Client> Clients { get; set; }
}
当我调用这些时,我必须创建单独的上下文,例如:
private AccountsContext db = new AccountsContext();
private ClientsContext clientsContext = new ClientsContext();
...这既烦人,又似乎是多余的,因为我知道当我使用 LINQ 时,我只需要实例化一个数据库对象。
有没有办法只使用一个上下文б,这是推荐的吗?