나의 최근의 질문에 더하여, 나는 이제 우리의 웹 애플리케이션이 공개하고 있던 대부분의 연결을 닫았다. 그러나 아래 기능에 의해 생성 된 연결은 열려 있습니다. 누구가 닫히지 않는지 확인할 수 있습니까? 을 나는 열려있는 연결을 보려면 로그인 SQL Server Management Studio에서 작업을 사용하고 있습니다 : HenkHolterman의 코멘트 @ 다음이 클래스 멤버가 SQL 연결을 열린 상태로 유지하는 이유는 무엇입니까?
public DataTable GetSubDepartment(int deptId)
{
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(Defaults.ConnStr))
{
SqlCommand cmd = new SqlCommand("proc_getDepartmentChild", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@dptParent", deptId));
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
da.Fill(dt);
}
return dt;
}
* EDIT * . 이자는 잠자는 것으로 기록됩니다. 그래서 당신이 말하는 것은 의미가 있습니다. 이것이 공개 된 연결 이라기보다는 풀링 된 연결이라는 것을 알 수있는 방법이 있습니까?
에 걸려 있다고 가정까요? 'using'과'Fill()'모두 그것을 닫아야합니다. 풀의 연결을보고있을 것입니다.이 코드와 관련이 없습니다. –
다음 테이블을 채울 때 _extra_ 연결을 추가하지 않으면 알 수 있습니다. –