Несколько Операций с soapAction = “” в Контракте на Обслуживание WCF?

Я должен создать сервис, который будет "призван обратно" третьим лицом. В результате я должен соответствовать их WSDL.

Их WSDL начинает все операции, определенные с soapAction="", таким образом, мой сервис должен сделать то же. К сожалению, я получаю ошибку:

Операции A и B имеют то же действие (). Каждая операция должна иметь уникальное значение действия.

В веб-сервисах ASMX был режим, где soapAction не будет использоваться, но название элемента запроса использовалось бы вместо этого. Там некоторый путь использует WCF не только, чтобы диспетчеризировать на элементе запроса, но также и испустить WSDL без soapAction?

7
задан John Saunders 9 April 2010 в 06:27
поделиться

1 ответ

Это возможно в asmx, но из коробки вы не найдете чистого способа сделать это в WCF, потому что он использует действие для отправки сообщений операциям .

Думаю, вам нужно установить для soapAction значение «*», а затем написать собственный диспетчер .

Потенциальным побочным эффектом этого является плохой WSDL. Если вам нужно открыть WSDL, вам придется сгенерировать / украсть его, а затем использовать атрибут externalMetadataLocation

11
ответ дан 6 December 2019 в 23:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: