Asp. NET Core 2.2 WCF Предупреждение: политика - PullRequest
0 голосов
/ 03 марта 2020

Я пытаюсь добавить wsdl с помощью WCF. Но сначала я получаю предупреждение вот так; введите описание изображения здесь

Вот подробности:

Следующие утверждения политики не были импортированы:

XPath://wsdl:definitions[@targetNamespace='urn:sap-com:document:sap:soap:functions:mc-style']/wsdl:binding[@name='zz_binding_SOAP12']

Утверждения:

<saptrnbnd:OptimizedXMLTransfer xmlns:saptrnbnd='http://www.sap.com/webas/710/soap/features/transportbinding/'>..</saptrnbnd:OptimizedXMLTransfer>
<sapattahnd:Enabled xmlns:sapattahnd='http://www.sap.com/710/features/attachment/'>..</sapattahnd:Enabled>

Следующие утверждения политики не были импортированы:

XPath://wsdl:definitions[@targetNamespace='urn:sap-com:document:sap:soap:functions:mc-style']/wsdl:binding[@name='zz_binding']

Утверждения:

    <saptrnbnd:OptimizedXMLTransfer xmlns:saptrnbnd='http://www.sap.com/webas/710/soap/features/transportbinding/'>..</saptrnbnd:OptimizedXMLTransfer>
    <sapattahnd:Enabled xmlns:sapattahnd='http://www.sap.com/710/features/attachment/'>..</sapattahnd:Enabled>

Необязательный элемент расширения WSDL «Политика» из пространства имен » http://schemas.xmlsoap.org/ws/2004/09/policy 'не было обработано.

XPath: //wsdl:definitions[@targetNamespace='urn:sap-com:document:sap:soap:functions:mc-style']/wsdl:portType[@name='zz_test_web_structure']/wsdl:operation[@name='ZzTestWebService']

Необязательный элемент расширения WSDL' Policy 'из пространства имен' http://schemas.xmlsoap.org/ws/2004/09/policy 'не был обработан.

XPath: //wsdl:definitions[@targetNamespace='urn:sap-com:document:sap:soap:functions:mc-style']/wsdl:portType[@name='zz_test_web_structure']

Я все еще не могу запустить службу wcf после ее добавления. Кто-нибудь знает об этом?

1 Ответ

0 голосов
/ 04 марта 2020
Инструмент

Microsoft WCF Web Service Reference Provider на основе конечной точки службы Mex, а именно конечной точки службы обмена метаданными вместо Web service definition language (страница WSDL).

  <services>
      <service name="WcfService1.Service1">
        <endpoint address="" binding="basicHttpBinding" contract="WcfService1.IService1" bindingConfiguration="mybinding"></endpoint>
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"></endpoint>
      </service>
</services>

Или

Binding mexbinding = MetadataExchangeBindings.CreateMexHttpBinding();
                sh.AddServiceEndpoint(typeof(IMetadataExchange), mexbinding, "mex");

Если вы предпочитаете генерировать прокси-класс клиента с использованием WSDL, вы можете попробовать инструмент SVCUtil.exe.
https://docs.microsoft.com/en-us/dotnet/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe
Все вышеперечисленные способы могут генерировать прокси-класс клиента.
https://docs.microsoft.com/en-us/dotnet/framework/wcf/accessing-services-using-a-wcf-client
Кроме того, в WCF4.5 есть новая функция под названием SingleWSDL, которая содержит весь WSDL со связанной схемой. Может отлично использоваться сторонней системой.
В чем разница между параметрами? Wsdl и? SingleWsdl
https://docs.microsoft.com/en-us/dotnet/framework/wcf/whats-new
Не стесняйтесь дайте мне знать, если есть что-нибудь, с чем я могу помочь.

...