wsdl.exe приводит к тому, что привязка SOAP 1.1 не найдена

Я пытаюсь реализовать веб-службу анализа HTML, как описано в главе 23 документов ASP.NET Unleashed (1-е изд.) И эта статья 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 (за исключением того, что я исправил недопустимый URL-адрес XMLSchema на w3.org, добавив «.dtd»).

Спасибо!


person devlord    schedule 30.10.2008    source источник


Ответы (1)


Wsdl.exe использовать по умолчанию SOAP в качестве протокола для реализации и, как следствие, пытается проверить соответствие базовому профилю. В любом случае wsdl.exe обрабатывает это и продолжает работу только с предупреждением. Если вы проверите файл статьи MSDN, вы заметите, что привязка настроить использование протокола HttpGet. Итак, если вы хотите подавить предупреждение, запустите

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

Однако результирующий прокси-класс такой же, как и предыдущий.

Дополнительное примечание: вам не нужно исправлять какой-либо URL-адрес, определяющий пространство имен, поскольку он используется не как URL-адрес, а как идентификатор. Хотя многие пространства имен выглядят как URL-адреса, они не обязательно указывают на фактические ресурсы в Интернете. Пространство имен http://www.w3.org/2001/XMLSchema определено консорциумом W3C в рекомендации по схеме XML.

person Panos    schedule 30.10.2008