Существующее соединение было принудительно закрыто удаленным хостом - WCF - PullRequest
45 голосов
/ 26 августа 2011

У меня есть веб-сервис WCF, который работает нормально. Однако есть один конкретный вызов, который терпит неудачу - но терпит неудачу только для определенных пользователей. Вызов довольно прост - это вызов для получения списка объектов Person.

Для пользователя А это работает нормально. Служба запрашивает базу данных, создает список объектов Person и возвращает его обратно вызывающему приложению.

Для пользователя B это не удается. Странная вещь в том, что, когда я делаю отладку, сервис работает нормально. Он может запрашивать базу данных, создает объект List и возвращает его. Сам сервис никогда не выходит из строя. Но клиентское приложение получает сообщение об ошибке «Существующее соединение было принудительно закрыто удаленным хостом».

Мне кажется, что что-то происходит, когда сервисный уровень пытается упаковать данные в формате XML для отправки обратно вызывающему приложению. Я думаю, что это должно быть проблема, связанная с данными, потому что вызов отлично работает для других пользователей. Я визуально посмотрел на данные, и я не вижу ничего странного. Можно предположить, что данные для пользователя B содержат некоторые скрытые символы или что-то в этом роде, что приводит к неожиданному закрытию службы. Нечто подобное.

Есть идеи?

Ответы [ 11 ]

0 голосов
/ 10 мая 2018

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

Это произошло потому, что между этими проектами не было явной ссылки, поэтому веб-служба не создавалась при нажатии F5 для начала отладки.Как только я добавил это, ошибки исчезли.

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