WCF 웹 서비스에서 두 번째 끝점을 만들려고합니다. 브라우저에 도메인 URL을 넣어 새 끝점의 "해피 페이지"를 가져올 수 있으므로 IIS가 내 사용자 계정을 사용하여 서비스를 제대로 찾을 수 있습니다. 나는 서비스를 호출하는 웹 페이지를 실행하려고하면system.serviceModel/bindings/wsHttpBinding의 바인딩에 구성된 바인딩이 없습니다.
그러나, 나는 설정 파일의이 부분 때문에
The binding at system.serviceModel/bindings/wsHttpBinding does not have a configured
binding named 'WSHttpBinding_IMonetToDss'. This is an invalid value for
bindingConfiguration. (D:\webcontent\Monet\web.config line 178).
아래의 오류가 발생하고있어 자동 생성 내가 만드는 비주얼 스튜디오입니다 서비스 참조 bindingConfiguration
값은 WSHttpBinding_IMonetToDss
입니다. 그것은 그렇게해서는 안됩니다.
아래는 모두 web.config에서 가져온 enpoint입니다. 첫 번째 끝점 /OKeeffe/OKeeffe.svc
이 제대로 작동하고 있습니다. /OKeeffe/MonetToDss.svc
의 두 번째 끝점에 문제가 있습니다.
<client>
<endpoint address="http://insidesoap.dev.symetra.com/Escher/EscherService.svc"
binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IEscherService"
contract="Escher.IEscherService" name="WSHttpBinding_IEscherService" />
<endpoint address="http://insideapps.dev.symetra.com/OKeeffe/OKeeffe.svc"
binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IAgentPayments"
contract="AgentPayments.IAgentPayments" name="WSHttpBinding_IAgentPayments">
<identity>
<userPrincipalName value="s.AgentData.dev" />
</identity>
</endpoint>
<endpoint address="http://insideapps.dev.symetra.com/OKeeffe/MonetToDss.svc"
binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IMonetToDss"
contract="MonetToDss.IMonetToDss" name="WSHttpBinding_IMonetToDss">
<identity>
<userPrincipalName value="s.AgentData.dev" />
</identity>
</endpoint>
</client>
편집
여기에 웹 서비스 설정 파일
<system.serviceModel>
<services>
<service name="OKeeffeDataService.MonetToDss"
behaviorConfiguration="MonetToDssBehaviors" >
<endpoint address=""
binding="wsHttpBinding"
contract="OKeeffeDataService.IMonetToDss" />
</service>
<service name="OKeeffeDataService.AgentPayments"
behaviorConfiguration="OKeeffeBehavior" >
<endpoint address=""
binding="wsHttpBinding"
contract="OKeeffeDataService.IAgentPayments" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="OKeeffeBehavior">
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
<behavior name="MonetToDssBehaviors" >
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
</system.serviceModel>
웹 사이트 또는 웹 서비스 자체를 의미합니까? 방금 서비스의 구성 섹션을 게시했습니다. – NealR
@NealR - 설정 파일의''섹션에서이 파일을 참조하는 끝점과 함께 정의해야합니다. –
Tim
나는 그게 내가 무슨 짓을했는지 믿을 : '<서비스 이름 = "OKeeffeDataService.MonetToDss" behaviorConfiguration = "MonetToDssBehaviors"> <엔드 포인트 주소를 = "" 바인딩 = "있는 wsHttpBinding" 계약 = "OKeeffeDataService.IMonetToDss"/> ' – NealR