svcutil.exe - ошибка: невозможно импортировать wsdl: portType - PullRequest
3 голосов
/ 22 июля 2010

Мне нужно интегрировать несколько существующих веб-сервисов в мое приложение .net.Но, к сожалению, запуск инструмента svcutil приводит к ошибке с сообщением:

Инструмент метаданных модели службы Microsoft (R) [Microsoft (R) Windows (R) Communication Foundation, версия 3.0.4506.2152] Copyright (c)Корпорация Майкрософт.Все права защищены.

Ошибка: невозможно импортировать wsdl: привязка Подробно: не удается найти определение для http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/V1.0:EnviarRespuestaVerifi carIdentidadCliente.Описание услуги с пространством имен http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/V1.0 отсутствует.Имя параметра: имя XPath to Error Источник: // wsdl: определения [@targetNamespace = 'http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/E nlace / V1.0'] / wsdl: binding [@ name = 'EnviarRespuestaVerificarIdentidadCliente_HttpBinding']

Ошибка: Невозможно импортировать wsdl: порт. Подробно: Произошла ошибка при импорте привязки wsdl:, от которой зависит порт wsdl:.XPath к wsdl: binding: // wsdl: определения [@targetNamespace = 'http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/E nlace / V1.0'] / wsdl: binding [@ name = 'EnviarRespuestaVerificarIdentidadCliente_HttpBinding'] XPath к ошибке Источник: // wslопределения [@targetNamespace = 'http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/E nlace / V1.0'] / wsdl: service [@ name = 'EnviarRespuestaVerificarIdentidadCliente'] / wsdl: port [@ name = 'EnviarRespuestaVerificarIdentidadttport * 1017Port]файлы ... Предупреждение: код не был создан.Если вы пытаетесь сгенерировать клиента, это может быть связано с тем, что документы метаданных не содержат каких-либо действующих контрактов или услуг, или потому что все контракты / услуги были обнаружены в / справочных сборках.Убедитесь, что вы передали все документы метаданных в инструмент.

Предупреждение. Если вы хотите создавать контракты данных из схем, обязательно используйте параметр / dataContractOnly.Кто-нибудь знает, что вызывает эту проблему?

1 Ответ

2 голосов
/ 28 июля 2010

Я вижу ту же проблему. У меня есть набор из 30 с лишним файлов wsdl в папке, и я пытаюсь создать клиентские классы C # для них всех.

Если я сделаю следующее

svcutil /noconfig /namespace:*,My.Required.Namespace *.wsdl

Я вижу много упомянутой вами ошибки (Невозможно импортировать wsdl: binding).

Однако, выбирая один файл за раз

svcutil /noconfig /namespace:*,My.Required.Namespace a.wsdl

Часто работает; иногда мне нужно включить другой файл, например

svcutil /noconfig /namespace:*,My.Required.Namespace b.wsdl c.wsdl

Это необходимо при попытке запуска svcutil на b.wsdl из-за зависимости от c.wsdl.

Итог: я не уверен, почему не могу создать контракты для всех этих определений сервисов за один раз, но это кажется невозможным. У меня все еще большая проблема с общими типами файлов; это означает, что мне фактически нужно отредактировать либо сторонний wsdl, либо автоматически сгенерированный код, чтобы все правильно компилировалось и работало.

...