HTTP-запрос не происходит при вызове службы WCF из клиента Silverlight - PullRequest
7 голосов
/ 16 апреля 2019

При отладке проблемы со старым приложением Silverlight я сузил проблему до определенного вызова службы WCF, который выглядит примерно так:

_serviceClient.UpdateFooAsync(fooDto);

Этот код не менялся годами, и в целом он работал, как и ожидалось. Однако с одним конкретным объектом вызов завершается неудачно. Асинхронный вызов происходит как обычно, но соответствующий HTTP-запрос не выполняется, и обработчик, который сработал бы при завершении события - ошибочно или нет - никогда не вызывается.

Вот некоторые дополнительные детали:

  • Приложение использует Silverlight 5.
  • Сервисный клиент приложения является автоматически сгенерированным клиентом, который наследуется от System.ServiceModel.ClientBase<T>.
  • Служба использует WCF и .NET 4.0.
  • Когда происходит вызов, соответствующая запись не записывается в журнал трассировки WCF.
  • Служба использует BasicHttpBinding. Я пытался увеличить все квоты и ограничения до их максимальных значений, но это не помогло.
  • Объект, который я пытаюсь отправить службе, имеет размер около 600 КБ при сериализации в формате XML / SOAP. Он большой, но находится в пределах, которые в настоящее время настроены для конечной точки.
  • Я с помощью нескольких инструментов подтвердил, что HTTP-запрос не выполняется.

Поскольку эта проблема возникает только в случае одной конкретной сущности, я могу только предположить, что виноват какой-то аспект этой сущности, но я не смог определить, что это такое.

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