0
리피터의 databind 메소드 호출이 이루어지면 데이터베이스 연결이 자동으로 닫힙니 까?asp.net; repeater.databind 및 데이터베이스 연결 닫기
여기에 ent에 대한 래퍼 클래스 메서드 내에 포함 된 코드 스 니펫이 있습니다. lib.
public SqlDataReader RunQuery(string strQuery)
{
Database db = DatabaseFactory.CreateDatabase();
string sqlCommand = strQuery;
DbCommand dbCommand = db.GetSqlStringCommand(sqlCommand);
return (SqlDataReader)db.ExecuteReader(dbCommand,CommandBehavior.CloseConnection);
}
프리젠 테이션 계층은 래퍼 클래스의 방법이 그것을 할 수있는 권리 방법이
SQLwrap sr = new SQLwrap();
Repeater1.DataSource = sr.RunQuery("select ....");
Repeater1.DataBind();
같은 위의 코드를 포함하는 호출?
나는 오래 전 repeater.databind가 자동으로 연결을 닫는다 고 생각하지만, 지금은 그것에 대해 확실하지 않습니다.
정상적으로 연결이 끊어지면 리피터가 아닌 경우 어떻게 연결이 닫혔는지 확인하십시오.
감사합니다.
이 함수가 포함 된 클래스는 dispose 메서드를 보유하거나 iDisposable 인터페이스를 구현할 필요가 없습니다. – user20358
사용중인 데이터베이스 클래스가 IDisposable을 구현하는 경우, using 절을 사용하여 인스턴스화하는 것이 가장 좋습니다 :'(Database db = DatabaseFactory.CreateDatabase() {// code here}' – Oded