2013-05-29 3 views
0

두 개의 .net 솔루션이 있습니다. 그들은 모두이 코드가 있습니다동일한 연결이 성공하고 다른 .net 솔루션에서 실패합니다.

var connectionString = "Server = ServerName; Database = DatabaseName; Trusted_Connection=True;" 
var connection = new SqlConnection(connectionString); 

connection.Open(); 
connection.Close(); 

을 그리고 그들은 모두 complitely 같은 ConnectionString을 사용합니다. 그리고 그들은 MSSQL Server에 연결합니다.

첫 번째 해결책에서는 connection.Open()이 성공했으며 두 번째 것은 실패했습니다. 오류 메시지 : 명명 된 파이프 공급자 오류 : 40 - SQL Server에 대한 연결을 열 수 없습니다.

그리고 새로운 솔루션을 만들 때마다 실패합니다. 따라서이 연결은 하나의 특정 솔루션에서만 작동합니다. 또한 팀원도이를 테스트 했으므로 그러한 문제는 없었습니다. 힌트가 왜 그렇게 될 수 있습니까?

+8

예외가 발생했습니다 –

+1

오류 메시지를 제공하지 않으면 어떻게하면 도움을받을 수 있습니까? –

+0

이러한 모든 .net 솔루션이 컴퓨터에서 올바르게 실행됩니까? – neo

답변

0

불편을 끼쳐 드려 죄송합니다. 내 문제는 내 부주의였다. 다른 네트워크 컴퓨터에서 soluiton을 만들었습니다.

2

SQL 서버에 TCP/IP 프로토콜이 활성화되어 있고 동적 포트를 사용하고 있는지 확인하고 SQL Browser 서비스가 실행 중인지 확인하십시오.

방화벽 소프트웨어 (Windows 방화벽 등)가 특정 exe에 예외가 추가되었는지 확인하십시오 (sqlservr.exe 파일이 C:\Program Files\Microsoft SQL Server\{instance name}\MSSQL\Binn에있는 인스턴스 폴더로 복사 됨, 인스턴스 이름은 다음과 유사 할 수 있음). MSSQL11.SQLEXPRESS) 또는 TCP 포트 1433 또는 UDP 포트 1434 (표준 설정을 가정하는 SQL 서비스 자체의 경우 TCP 1433, SQL 브라우저 서비스의 경우 UPD 1434).

서버에 액세스하는 데 사용 된 사용자 계정 (충분한 권한이 있어야하며 로그인이 활성화되어 있어야 함)을 확인하십시오.이 경우 로그인 한 Windows 계정 또는 IIS 응용 프로그램 풀 Trusted_Connection=True을 사용하고 있기 때문에 실행 중입니다.

또한 컴퓨터에 최신 SQL 클라이언트가 있는지 확인하고 Windows의 최신 버전 here을 얻을 수 있습니다.

1

SQL Server 구성 관리자를 열고 SQL Server 인스턴스에 대해 명명 된 파이프 옵션이 설정되어 있는지 확인하십시오.

+0

명명 된 파이프가 활성화되었습니다. – Vas

+0

TCP/IP가 활성화되어 있습니까? – user65439

+0

네, 사용 가능합니다. – Vas

관련 문제