мне нужно установить WSE 3 для Visual Studio 2010 - PullRequest
2 голосов
/ 17 мая 2011

Я пытаюсь добавить ссылку на службу в VS 2010 (WCF).Веб-сервис использует WS-Policy, и когда я использую сервис, я получаю некоторый закомментированный код в разделе app.confing customBindings:

<!--    WsdlImporter encountered unrecognized policy assertions in ServiceDescription 'http://ws.TheirSite.com/WebServices/ResellerApiV1.wsdl':    -->
<!--    <wsdl:binding name='ResellerApiBinding'>    -->
<!--        <ns0:SupportingTokens xmlns:ns0="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">..</ns0:SupportingTokens>    -->

, и я не могу создать SOAP-заголовок с информацией UserNameToken.

Это закомментированные разделы, потому что мне нужно установить WSE 3.0 или это входит в состав 4.0 Framework?

РЕДАКТИРОВАТЬ : Спасибо за комментарии.Хост вернулся ко мне и сказал, что мне нужно добавить этот тег безопасности для решения этой проблемы (* обратите внимание, что enableUnsecuredResponse доступен только в 4.0 Framework):

<security authenticationMode="UserNameOverTransport" enableUnsecuredResponse="true" />

Видимо, прокомментированный xml в приложении.Конфигурация вызвана инструментом VisualStudio WsdlImporter (svcutil.exe?), который не может обработать политику SupportingTokens, но добавление вышеуказанной директивы вставит имя пользователя WS-Security в заголовок SOAP.

Ответы [ 2 ]

2 голосов
/ 27 июня 2011

Недавно мне пришлось поддерживать WSE 3.0 в Visual Studio 2010 (не по выбору), поскольку у нас было несколько приложений .NET 2.0, которые (по нескольким причинам) мы не можем обновить, и которым необходимо использовать WSE 3.0 по некоторым «нестандартным» причинам.

В Visual Studio можно использовать старый Importer для генерации прокси-серверов WSDL, но вам необходимо установить WSE 3.0 и внести некоторые изменения в конфигурацию. Все это задокументировано в двух сообщениях в блоге здесь:

http://www.sanderstechnology.com/?p=10648

http://www.sanderstechnology.com/?p=10659

0 голосов
/ 29 июня 2013

Усовершенствования веб-службы 3 (WSE 3) официально не поддерживаются с Visual Studio 2008. Причина в том, что Microsoft хочет, чтобы вы перенесли свой код в WCF.

Следуйте блогу ниже, чтобы включить WSE 3.0 в Visual Studio 2012, 2010 и 2008

http://digantakumar.com/2010/06/04/wse-3-in-visual-studio-2008-and-2010/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...