Мне нужно создать приложение .Net, которое использует кучу веб-сервисов. Этот веб-сервис работает под управлением weblogic. В WSDL веб-служб упоминается XSD-файл, описывающий типы.
Когда я пытаюсь добавить «Справочник услуг» в VS studio, у меня возникают ошибки:
Предупреждение 1 Предупреждение о нестандартном инструменте: невозможно импортировать wsdl: portType
Подробно: возникла исключительная ситуация при выполнении расширения импорта WSDL: System.ServiceModel.Description.XmlSerializerMessageContractImporter
Ошибка: не удалось найти схему с целевым пространством имен 'http://mycustomer/ws/types'.
XPath to Error Источник: // wsdl: определения [@targetNamespace = 'http://mycustomer/ws/wsdl']/wsdl:portType[@name='lbWebPT'] C: \ Projects \ mycustomerproject \ Сервисные ссылки \ ClientService \ Reference.svcmap
X3 для элементов portType, Binding и port файла wsdl.
Я догадывался, что это из-за отсутствующих типов, определенных в файле xsd. Чтобы обойти эту ошибку, а также избежать дублирования кода, я запускаю следующую команду в моем файле xsd (в командной строке события перед сборкой):
"% ProgramFiles% \ Microsoft SDKs \ Windows \ v7.0A \ bin \ xsd.exe" "$ (ProjectDir) xsdofmycustomer.xsd" /namespace:"MyCustomer.WebServices.Types "/ c / o:" $ ( ProjectDir). "
эта команда успешно создает файл кода с типами и с правильным пространством имен, определенным в XmlRootAttribute
.
этот код был помещен в выделенный проект VS. Проект, в котором я пытаюсь ссылаться на сервис, ссылается на этот проект. Тем не менее, ошибка все еще происходит.
Что я могу сделать, чтобы решить мою проблему?
PS: мне удалось частично решить мою проблему с помощью svcutil.exe pathtowsdl pathtoxsd
, но я хотел бы иметь возможность поддерживать эталон в VS для простоты использования.
ТНХ