#wcf #soap #wsdl #azure-api-management
Вопрос:
Мне нужно создать API в управлении API Azure из WSDL для существующей службы WCF. Метод в сервисном контракте имеет атрибут OperationContract с действием и ответом, равным»*», чтобы он мог обрабатывать все сообщения. По сути, это маршрутизатор, реализованный в службе WCF. Проблема, с которой я сталкиваюсь, заключается в том, что, когда для этой службы создается wsdl, она не добавляет операцию из-за * для действия и ответа, и у меня остается wsdl без операций в нем. Если я удалю * для действия и ответа, операция будет правильно включена в сгенерированный wsdl.
Когда я пытаюсь создать API из этого WSDL в управлении API, он выдает сообщение об ошибке «Не удалось создать API. Пожалуйста, повторите попытку позже». Я думаю, что это связано с отсутствием операций в wsdl.
Как можно создать API в управлении API для этой службы WCF с действием и ответом, установленными в «*» в контракте на операцию? Я открыт для любых идей здесь.
Я действительно хочу просто переслать запрос WCF в управлении API в серверную службу. Однако API в управлении API должен быть способен обрабатывать все операции. Я попытался изменить операцию в API для службы SOAP для обработки подстановочных знаков, т. е. «/?SOAPAction=http://tempuri.org/IRouter/*», но безуспешно.
Это интерфейс для службы WCF:
[ServiceContract()] IRouter открытого интерфейса {
[OperationContract( Действие = ««, Ответ = «» )]
Сообщение ProcessMessage( Запрос сообщения ); }
Комментарии:
1. Вы можете взглянуть на: docs.microsoft.com/en-us/biztalk/core/…