Я столкнулся с проблемой при попытке вернуть объект, который содержит коллекцию дочерних объектов, которые снова могут содержать коллекцию объектов внуков. Я получаю сообщение об ошибке «Соединение принудительно закрыто хостом».
Есть ли способ заставить эту работу? В настоящее время у меня есть структура, похожая на это:
псевдокод:
Person:
IEnumerable<Order>
Order:
IEnumerable<OrderLine>
Все три объекта имеют атрибут DataContract, а все открытые свойства, которые я хочу раскрыть (включая IEnumerable), имеют атрибут DataMember.
У меня есть несколько OperationContract в моем сервисе, и все методы, возвращающие один объект ИЛИ IEnumerable объекта, работают отлично. Только когда я пытаюсь вложить IEnumerable, получается плохо. Также в моей справке по обслуживанию клиентов я выбрал общий список в качестве типа моей коллекции. Я просто хочу подчеркнуть, что только одна из моих операций / методов терпит неудачу с этой ошибкой - остальные работают отлично .
РЕДАКТИРОВАТЬ (более подробное описание ошибки):
[SocketException (0x2746): An existing connection was forcibly closed by
the remote host]
[IOException: Unable to read data from the transport connection:
An existing connection was forcibly closed by the remote host.]
[WebException: The underlying connection was closed: An unexpected
error occurred on a receive.]
[CommunicationException: An error occurred while receiving the HTTP
response to http://myservice.mydomain.dk/MyService.svc. This could
be due to the service endpoint binding not using the HTTP protocol.
This could also be due to an HTTP request context being aborted by
the server (possibly due to the service shutting down). See server
logs for more details.]
Я пытался искать журналы, но не могу их найти ... также я использую WSHttpBinding и конечную точку http.