Я столкнулся с смешной проблемой с сериализацией ответа WCF. После нескольких запросов (скажем, 10), WCF начинает смешивать запросы и всегда после 128-го символа при использовании кодировки Utf8.Смешайте два ответа
Ожидаемый ответ:
<via version="1.1">
<response>
<status code="0" />
<res-get-balance>
<balance value="38.65" currency="GBP" />
<token>IQV2SSc41Fux6zWeaaUOMKtBvYW3IgtDZFJ4r1</token>
</res-get-balance>
</response>
</via>
Однако я получил в качестве ответа:
<via version="1.1">
<response>
<status code="0" />
<res-get-balance>
<balance value="38.65" currency="GBP" />
<token>IQV2SSc41Fux6zWe
<via version="1.1">
<response>
<status code="0" />
<res-get-balance>
<balance value="38.65" currency="GBP" />
<token>IQ
Когда он достигает символа номер 128 начинается с самого начала.
Вот моя связывании конфигурация:
<webHttpBinding>
<binding name="webHttpBindingConfig" sendTimeout="05:00:00" ></binding>
</webHttpBinding>
Вот моя конфигурация поведения:
<behavior name="webXmlOverHttpBehavior">
<dataContractSerializer maxItemsInObjectGraph="165536" />
<endpointDiscovery enabled="true" />
<webHttp helpEnabled="true" defaultOutgoingResponseFormat="Xml" />
</behavior>
Моя реализация услуг имеет следующий атрибут:
[ServiceBehavior(IncludeExceptionDetailInFaults = true, InstanceContextMode = InstanceContextMode.Single)]
Любые идеи?
Почему ваш элемент XML-документа 'via'? Кроме того, вы пробовали Fiddler, чтобы узнать, является ли ответ от службы тем, что искажено, или существует ли прокси-сервер между вашим клиентом и сервером? –
Да. Скрипач показывает мне эти плохие отзывы. –