2012-09-20 5 views
1

문제가 있습니다. SQL 연결 열기를 위해이 메서드를 작성했습니다. 그러나 그것은 효과가 없었습니다. 왜 작동하지 않았습니까?연결이 열려 있지 않습니다.

public SqlConnection connection() 
{ 
    string DBName = ConfigurationManager.AppSettings["DBName"].ToString(); 
    string ServerName = ConfigurationManager.AppSettings["ServerName"].ToString(); 
    string UserId = ConfigurationManager.AppSettings["UserId"].ToString(); 
    string DBPassword = ConfigurationManager.AppSettings["DBPassword"].ToString(); 

    EMVTool.OSSPwdProcessor PwdPass = new EMVTool.OSSPwdProcessor(); 

    String sClearPwd = ""; 

    if (DBPassword.Length > 40) 
     sClearPwd = PwdPass.DecryptPwd(DBPassword); 
    else 
     sClearPwd = DBPassword; 

    string ConnectionString = "Server=" + ServerName + ";Database =" + DBName + ";UID =" + UserId + ";PWD =" + sClearPwd + ";MultipleActiveResultSets=True;"; 

    SqlConnection connect = new SqlConnection(ConnectionString); 

    return connect; 
} 

난 SQL 연결을 여는 것과 같은 방법을 호출하고있다.

connection().Open(); 
+3

* 어떻게 *이 작동하지 않았다 :

는 작동 지역 변수에 함수의 반환 값을 할당 만들려면? 또한 실제로 연결을 사용하는 위치 대신 관련 코드를 표시하십시오. –

+1

결과로'ConnectionString'을 게시 할 수도 있습니다. – Bartosz

+2

... 사용자 이름과 암호를 제거하는 것을 기억하십시오. –

답변

3

무언가를 연 다음 다른 인스턴스를 사용 했으므로 작동하지 않았습니다.

using (SqlConnection conn = connection()) 
{ 
    conn.Open(); 
    //rest of code... 
} 
+0

"그림자 마법사"에게 감사드립니다. 그것은 효과가 ... –

관련 문제