我一直在尝试使用 Entity Framework 的 Code First。我写了下面的代码行
DbContext _context = new DbContext(ConfigurationManager.ConnectionStrings["con"].ConnectionString);
但是在执行时,连接保持关闭。这段代码有问题吗??
我使用如下所示的 DBContext 创建了一个通用存储库类
public class GenericRepository<T> where T:class
{
public DbContext _context = new DbContext(ConfigurationManager.ConnectionStrings["con"].ConnectionString);
private DbSet<T> _dbset;
public DbSet<T> Dbset
{
set { _dbset = _context.Set<T>(); }
get { return _dbset; }
}
public IQueryable<T> GetAll()
{
return Dbset;
}
}
然后我在页面加载事件上调用这个类,其中教师是一个实体类,它映射到数据库中的一个表
protected void Page_Load(object sender, EventArgs e)
{
GenericRepository<Teacher> studentrepository = new GenericRepository<Teacher>();
rptSchoolData.DataSource = studentrepository.GetAll().ToList();
rptSchoolData.DataBind();
}
但连接仍然关闭,并且上下文对象的 ServerVersion 中也存在 InvalidOperation 异常。
我错过了什么吗?