최근 새 웹 응용 프로그램에서 웹 참조를 웹 참조가 아닌 서비스 참조로 추가했습니다. 대부분의 웹 서비스는 asmx 웹 서비스로 설계되었습니다.서비스 참조로 ASMX 웹 서비스를 추가하면 여러 끝 점이 생성됩니다.
는 서비스 참조를 추가 한 후 내 Web.config를 항상 다음과 같습니다 계약
엔드 포인트 구성 섹션 : 나는 그것을 소비 할 때
이<bindings>
<basicHttpBinding>
<binding name="UserSoap" />
</basicHttpBinding>
<customBinding>
<binding name="UserSoap12">
<textMessageEncoding messageVersion="Soap12" />
<httpTransport />
</binding>
</customBinding>
</bindings>
<client>
<endpoint address="{{service URL}}" binding="basicHttpBinding"
bindingConfiguration="UserSoap" contract="User.UserSoap"
name="UserSoap" />
<endpoint address="{{service URL}}" binding="customBinding"
bindingConfiguration="UserSoap12" contract="User.UserSoap"
name="UserSoap12" />
</client>
그런 다음 내 응용 프로그램이 오류를 제공합니다 해당 계약의 둘 이상의 엔드 포인트 구성이 발견되어 'User.UserSoap'을로드 할 수 없습니다. 원하는 엔드 포인트 구성 섹션을 이름으로 표시하십시오.
수동으로 끝점 중 하나를 제거했지만이 문제를 해결하는 방법을 알고 싶습니다. 어떻게 이런 일이 일어나지 않도록 할 수 있습니까?
엔드 포인트 이름으로 액세스 할 수 있습니까? 예를 들어,'var service = new User.UserSoapClient ("UserSoap")'? – Win
나는 이것을 다음과 같이 소비한다 : (var userService = new UserSoapClient())를 사용하여 을 사용한다. {} 그리고 올바르게 작동하는 엔드 포인트 이름을 추가한다. – ArjaaAine
그것이 유일한 해결책입니까, 왜 2 개의 끝점이 만들어 집니까? – ArjaaAine