2013-08-25 1 views
0

Visual Studio 2008을 사용하고 있습니다. WCF 응용 프로그램을 만들었으며 VS IDE (IIS에서 호스팅되지 않음)에서 서비스를 처음 실행했을 때 서비스가 웹에서 열렸습니다 브라우저 주소는 localhost:1927/입니다. VS IDE에서이 서비스를 실행할 때마다 동일한 포트 (예 : 1927)에서 실행됩니다.프로토콜 바인딩이 주어진 주소와 일치하지 않습니다. '오류

포트 번호를 변경하려고 했으므로 을 web.config 파일에 지정했습니다. 이 변경 후 IDE에서 웹 서비스를 실행할 때 다음 오류가 계속 발생합니다.

프로토콜 바인딩이 'localhost : 1928 /'지정된 주소와 일치하지 않습니다. 프로토콜 바인딩은 IIS 또는 WAS 구성의 사이트 수준에서 구성됩니다.

다음은 web.config 파일의 <service> 부분입니다.

<service name="EMS.ServiceImplementation.EmployeeService" 
     behaviorConfiguration="EM.EmployeeServiceBehavior" > 
    <endpoint name="httpEndPoint" 
     address="http://localhost:1928/" 
     binding="basicHttpBinding" bindingConfiguration="" 
     contract="EMS.ServiceContracts.IEmployeeService" /> 
    <endpoint name="MEXEndPoint" 
     address="mex" 
     binding="mexHttpBinding" bindingConfiguration="" 
     contract="IMetadataExchange" /> 
</service> 

내 구체적인 질문은 다음과 같습니다

  1. 어떻게 VS IDE는 첫 번째 실행에 집어 동일한 포트에 항상 서비스를 실행 않습니다 ? 이 정보는 어디에 저장되어 있습니까? (솔루션의 모든 파일을 조사했지만 어디에서나 언급 된 포트 1927을 찾을 수 없었습니다).

  2. 다른 포트에서 서비스를 실행하려면 어떻게해야합니까?

(즉 유의하시기 바랍니다 I에 유래 유사한 스레드를 봐 왔지만, 그들은 IIS에서 호스팅 서비스에 관련)`

답변

1

당신은 프로젝트 속성에서 솔루션 탐색기에서이를 제어 할 수 있습니다. enter image description here

모든 비 표준 설정

YourProject.csproj에 저장됩니다 : 기본 자동 할당 된 포트를 사용할지 여부를 당신은 비주얼 스튜디오를 알 수 Web라는 탭 또는 사용자가 선택한 특정 고정 포트가있다 파일.

2

주소 속성을 비워두면 해결됩니다.

관련 문제