2012-12-03 3 views
0

로컬 컴퓨터의 SQL Server 2008 R2에서 호스팅되는 데이터베이스에 연결하는 웹 서비스를 만들고 일부 작업을 수행했습니다. 그것은 잘 성공적으로 작동 데이터베이스에 액세스하고 바로 실행IIS에 soap webservice를 추가하십시오.

conn = new SqlConnection("Data Source=amir-pc\\SQLEXPRESS;User Id=sa;Password=1234; Initial Catalog=Election;Integrated Security=True"); 

:

웹 서비스에서 연결 문자열입니다.

이제이 웹 서비스를 IIS에 추가하려고합니다.

Windows 7에 IIS를 성공적으로 추가했으며 브라우저에서 실행할 수 있습니다.

localhost/election_service/service.asmx 

하지만 연결을 확인하는 함수를 호출하려고하면 실패하고 그 이유를 알 수 없습니다.

[WebMethod] 
    public string Check_conn() 
    { 
     try 
     { 
      conn.Open(); 
      conn.Close(); 
      return "ok"; 
     } 
     catch 
     { 
      return "failed"; 
     } 
    } 

나는 데이터베이스에 액세스 할 수 있도록하려면 반드시 어떤 수정이 있습니까 : 이 함수인가?

답변

0

안녕하세요. 예외가 무엇인지 알기 위해 코드를 변경하십시오.

public string dbcheck() 
{ 
    try 
    { 
     conn.Open(); 
     conn.Close(); 
     return "ok"; 
    } 
    catch (Exception ex) 
    { 

     return ex.Message; 

    } 
} 

안녕, 다음에 .. 로그인 문제 : 오픈 IIS를 열고 응용 프로그램 풀은 (기본을 DefaultAppPool이다가) 현재 작업중인 현재 응용 프로그램 풀을 선택 고급 옵션으로 이동하여 아이덴티티를 찾아 변경 (NT AUTHORITY \ Network Service) 그런 다음 응용 프로그램 사용자가 변경되었습니다. 이제 네트워크 서비스에 permision을 데이터베이스에 추가해야합니다. SQlMananger를 열고 노드 보안으로 이동 한 다음 rigth click 및 properties를 NT AUTHORITY \ Network Service로 이동하십시오. 액세스를 허용 할 데이터베이스를 추가하십시오.

+0

오류는 로그인에서 요청한 데이터베이스 "Election"을 열 수 없습니다. 로그인에 실패했습니다. 사용자 'IIS APPPOOL \ DefaultAppPool'에 대한 로그인에 실패했습니다. –

+0

안녕하세요, .. 로그인 문제입니다 : Open IIS 응용 프로그램 풀 열기 현재 응용 프로그램 풀 선택 현재 작동 중입니까 (기본값은 DefaultAppPool입니다) 고급 옵션으로 이동하여 ID를 찾아 (NT AUTHORITY \ Network 서비스) 그런 다음 당신은 rigth 클릭, 지금은 열기 SQlMananger, 다음 노드 보안으로 이동 데이터베이스에 대한 서비스를 네트워크에 permision을 추가 할 필요가, 응용 프로그램 사용자가 변경되었습니다와 속성은 사용자로 이동 서비스 NT AUTHORITY \ 네트워크로 이동 매핑을 허용하고 액세스를 허용 할 데이터베이스를 추가하십시오. –

+0

연결 되셨습니까? –

관련 문제