Я пытаюсь получить данные из службы SOAP, но не могу заставить их работать.Проблема, я думаю, в ядре .net не были реализованы все методы привязки.У меня также есть рабочий пример, но он написан с помощью .net Framework.
Итак, вопрос в том, вот рабочая конфигурация "Web.config"
</customBinding>
<binding name="example">
<security authenticationMode="UserNameOverTransport" enableUnsecuredResponse="true" includeTimestamp="false" />
<textMessageEncoding messageVersion="Soap12" />
<httpsTransport maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" />
</binding>
Я пытался выполнить эту настройку в ядре .net, но никак не мог.Всегда получайте сообщения об ошибке на платформе, и даже если я работаю, сервису требуется базовая аутентификация, сбой и т. Д. И т. Д. Итак, вот моя последняя попытка, которая дает мне сообщение «TransportSecurityBindingElement.BuildChannelFactoryCore не поддерживается».ошибка:
CustomBinding binding = new CustomBinding()
{
Name = "example",
ReceiveTimeout = new TimeSpan(0, 0, 100, 0, 0),
SendTimeout = new TimeSpan(0, 0, 100, 0, 0),
};
var element1 = SecurityBindingElement.CreateUserNameOverTransportBindingElement();
var element2 = new HttpsTransportBindingElement()
{
ManualAddressing = false,
MaxReceivedMessageSize = 2147483647,
AllowCookies = false,
AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous,
BypassProxyOnLocal = false,
MaxBufferSize = 2147483647,
ProxyAuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous,
TransferMode = TransferMode.Buffered,
UseDefaultWebProxy = true
};
var element3 = new TextMessageEncodingBindingElement(MessageVersion.Soap11, System.Text.Encoding.UTF8);
binding.Elements.Add(element1);
binding.Elements.Add(element3);
binding.Elements.Add(element2);
А также, как вы видите, мне нужна привязка безопасности, для которой требуется
<security authenticationMode="UserNameOverTransport" enableUnsecuredResponse="true" includeTimestamp="false" />
Но даже в коде я не могу создать эту привязку самостоятельно.Даже если я это сделаю, код не будет работать из-за проблемы, как я упоминал выше.Спасибо за ваше время