私は 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;
}
}
次に、ページ読み込みイベントでこのクラスを呼び出します。Teacher は、データベース内のテーブルにマップされるエンティティ クラスです。
protected void Page_Load(object sender, EventArgs e)
{
GenericRepository<Teacher> studentrepository = new GenericRepository<Teacher>();
rptSchoolData.DataSource = studentrepository.GetAll().ToList();
rptSchoolData.DataBind();
}
しかし、接続は閉じられたままであり、コンテキスト オブジェクトの ServerVersion にも InvalidOperation 例外があります。
私は何かが欠けていますか??