문제

23 장에 설명 된대로 HTML 구문 분석 웹 서비스를 구현하려고합니다. ASP.NET가 해제되었습니다 (첫 번째 ed.) 및 이 MSDN 기사. 여태까지는 그런대로 잘됐다! 그러나 wsdl.exe를 사용하여 클래스를 생성 할 때 성가신 경고를받습니다.

Microsoft (R) Web Services Description Language Utility
[Microsoft (R) .NET Framework, Version 2.0.50727.3038]
Copyright (C) Microsoft Corporation. All rights reserved.

Warning: This web reference does not conform to WS-I Basic Profile v1.1.
SOAP 1.1 binding was not found: WS-I's Basic Profile 1.1 consists of 
implementation guidelines that recommend how a set of core Web services
specifications should be used together to develop interoperable Web 
services. For the 1.1 Profile, those specifications are SOAP 1.1, 
WSDL 1.1, UDDI 2.0, XML 1.0 and XML Schema.

For more details on the WS-I Basic Profile v1.1, see the specification
at http://www.ws-i.org/Profiles/BasicProfile-1.1.html.

가능하면 사양을 준수하고 싶습니다. 나는 보았다 권장 페이지 W3.org에서 몇 페이지를 찾았지만 준수하기 위해 어떤 XML 요소를 포함 해야하는지에 대한 구체적인 예를 찾지 못했습니다.

내 XML을 게시하는 대신 WSDL은 MSDN 기사에 사용 된 내용을 대략적으로 준수한다고 말할 것입니다 ( ".dtd"를 추가하여 w3.org의 xmlschema에 대한 유효하지 않은 URL을 수정 한 경우).

감사!

도움이 되었습니까?

해결책

Wsdl.exe 기본적으로 사용하십시오 비누 구현하기위한 프로토콜로서 결과적으로 기본 프로파일에 대한 적합성을 확인하려고합니다. 그래도, wsdl.exe 이것을 처리하고 경고만으로 계속됩니다. 당신이 확인하면 MSDN 기사 파일, 바인딩은 사용하도록 구성됩니다. httpget 규약. 따라서 경고를 억제하려면

wsdl.exe /protocol:HttpGet <url or path> 

그러나 결과 프록시 클래스는 이전 프록시 클래스와 동일합니다.

참고 사항: 네임 스페이스를 정의하는 URL이 URL로 사용되지 않고 식별자로 사용되므로 URL을 수정할 필요가 없습니다. 많은 네임 스페이스가 URL처럼 보이지만 웹의 실제 리소스를 가리킬 필요는 없습니다. 네임 스페이스 http://www.w3.org/2001/XMLSchema w3c in에 의해 정의됩니다 XML 스키마 권장 사항.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top