0
class BaseData
{
public string DbConnection = ConfigurationManager.ConnectionStrings["OLTPPOINTER_Connectionstring"].ConnectionString;
public string DbConnection_Report = ConfigurationManager.ConnectionStrings["OLTPPOINTER_Connectionstring"].ConnectionString;
protected SqlConnection OpenConnection()
{
**SqlConnection conn = new SqlConnection(DbConnection);**----"StackOverflow Exception was unhandled"
try
{
if (conn.State != ConnectionState.Open)
{
conn.Open();
}
return conn;
}
catch { throw; }
}
예외를 사용하지 않고 언젠가는 재귀를 사용합니다. 은 어떤 경우에는 예외가 발생합니다 : -mscorlib.dll에서 '시스템 스택 오버플로 예외'유형의 처리되지 않은 예외가 발생했습니다.
SqlConnection conn = new SqlConnection(DbConnection);
or
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
adpt.Fill(ds, "DataSet");
CloseConnection(cmd.Connection);
는 재귀 호출은 던져 Exception.How 그것이
다중 연결을 피하십시오. 의미 - 연결 연결을 닫지 않고 작업을 통해 사용해야합니다. –
정확히 재귀 부분에서 수행중인 작업에 따라 달라집니다. 이것은 모든 재귀 호출의 당분간 연결을 연결하거나 각 재귀 호출 내에서 연결을 열거 나 닫는 것이 더 나은지 선택하는 호출입니다. –
코드가 Exception없이 작동 중입니다 ..... 매번 thread.sleep (3000)을 넣은 후 재귀 함수를 호출합니다. –