WCF потоковый контракт - PullRequest
       6

WCF потоковый контракт

1 голос
/ 26 января 2009

Я пытаюсь настроить потоковую службу WCF с использованием basicHttpBinding. Служба размещена в процессе IIS7.

Контракт содержит простую операцию Stream GetStream ().

Когда я соединяюсь с простым клиентом, используя ссылку на сервис, я получаю следующий результат от сервера.

Тип контента multipart / related; type = "application / xop + xml"; start = "http://tempuri.org/0";boundary="uuid:9520d099-4241-43f3-824d-5a3d197f62ed+id=1";start-info="text/xml" не поддерживается службой http://localhost:6000/StreamingTest.svc. Привязки клиента и службы могут не совпадать.

Это конфигурация привязки на клиенте. Раздел привязки, называемый streaming_IStreamingTestService, является точной копией на сервере. Ctrl + X

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="streaming_IStreamingTestService" closeTimeout="00:01:00"
                    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                    allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                    maxBufferSize="655360" maxBufferPoolSize="655360" maxReceivedMessageSize="655360"
                    messageEncoding="Mtom" transferMode="Streamed" useDefaultWebProxy="true">
                    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                    <security mode="None">
                        <transport clientCredentialType="None" proxyCredentialType="None"
                            realm="" />
                        <message clientCredentialType="UserName" algorithmSuite="Default" />
                    </security>
                </binding>
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="http://localhost:8000/StreamingTest.svc"
                binding="basicHttpBinding" bindingConfiguration="streaming_IStreamingTestService"
                contract="Services.StreamingTest.IStreamingTestService" name="streaming_IStreamingTestService" />
        </client>
    </system.serviceModel>
</configuration>

1 Ответ

1 голос
/ 04 сентября 2009

Часть ошибки, которая имеет отношение к делу, называется «Привязки клиента и службы могут не совпадать».

Поскольку вы используете на сервере режим передачи «Потоковый», а «Буферизованный» используется по умолчанию, это, вероятно, несоответствие.

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