2012-12-08 8 views
0

svcutil을 사용하여 wcf 끝점에서 서비스 참조를 생성하고 있습니다. 모두 최근까지 잘 작동했지만 갑자기 모든 엔드 포인트에 대해 다음 오류가 발생하기 시작했습니다.svcutil을 통해 서비스 참조를 생성 할 때 오류가 발생했습니다.

Attempting to download metadata from 'http://localhost.myservice.com/MyEndpoint.svc' using WS-Metadata Exchange or DISCO. Error: Cannot import wsdl:binding Detail: The given key was not present in the dictionary. XPath to Error Source: //wsdl:definitions[@targetNamespace='http://tempuri.org/' ]/wsdl:binding[@name='wsMyEndpoint']

Error: Cannot import wsdl:port Detail: There was an error importing a wsdl:binding that the wsdl:port is depend ent on. XPath to wsdl:binding: //wsdl:definitions[@targetNamespace='http://tempuri.org/' ]/wsdl:binding[@name='wsMyEndpoint'] XPath to Error Source: //wsdl:definitions[@targetNamespace='http://myservice.com/serv ices/']/wsdl:service[@name='MyEndpoint']/wsdl:port[@name='wsMyEndpoint']

Error: Cannot import wsdl:binding Detail: The given key was not present in the dictionary. XPath to Error Source: //wsdl:definitions[@targetNamespace='http://tempuri.org/' ]/wsdl:binding[@name='netNamedMyEndpoint']

Error: Cannot import wsdl:port Detail: There was an error importing a wsdl:binding that the wsdl:port is depend ent on. XPath to wsdl:binding: //wsdl:definitions[@targetNamespace='http://tempuri.org/' ]/wsdl:binding[@name='netNamedMyEndpoint'] XPath to Error Source: //wsdl:definitions[@targetNamespace='http://myservice.com/serv ices/']/wsdl:service[@name='MyEndpoint']/wsdl:port[@name='netNamedMyEndpoint']

Generating files... Warning: No code was generated. If you were trying to generate a client, this could be because the metadata docu ments did not contain any valid contracts or services or because all contracts/services were discovered to exist in /reference assembl ies. Verify that you passed all the metadata documents to the tool.

나는 서비스 참조를 생성하는 배치 파일에는 svcutil을 호출하여 서비스 참조를 생성합니다.

나는 그것이 다른 개발자가 만든 변화일지도 모르지만 단지 추측이라고 생각한다. 누구든지 내가 겪고있는 문제에 대해 조사 할 방법을 알고있을 수도 있고 정확한 해결책을 제시해 줄 수도 있습니다.

+0

"다른 개발자가 만든 변화일지도 모르겠지만 추측은 그렇게 생각합니다."이전과 이후의 변경 사항을 비교하십시오. 또는 임시 롤백을 수행하고 작동하는지 확인하십시오. –

+0

이 두 가지와 행운을 모색했지만 문제는 해결되지 않았습니다. 정말 혼란스러워! – amateur

+0

서비스 코드를 게시하십시오. 확인 할게 – Sajeetharan

답변

0

엔드 포인트에서 클라이언트를 자동으로 생성하려면 서비스를 빌드하고 다른 오류없이 배포해야합니다. 또한 IIS는 서비스의 메시지를 수락 할 준비가되어 있어야합니다.

시도해 볼만한 디버깅 : 일단 배치하면 수동으로 배치 파일을 실행하면 프록시/서비스 참조를 생성 할 수 있습니까? 엔드 포인트에서 VS를 가리키고 '폐기'프로젝트에서 서비스 참조를 작성하면 모든 작업이 가능합니까?

그렇지 않은 경우 관련 서비스 동작의 요소에 대한 구성을 게시하십시오. 나는 그 답이 있을지도 모른다고 생각한다.