Как недавно добавленный файл global.asax может испортить мою службу WCF?

StackOverflow https://stackoverflow.com/questions/4412124

Вопрос

У меня есть приложение silverlight, которое использует WCF как путем опроса дуплексных, так и «обычных» асинхронных вызовов.все работало нормально, пока я не добавил файл global.asax.

После часа поиска в Google я наткнулся на довольно устаревший блог автора: Жан-Дирк Стюарт это предложило закомментировать заглушенное событие Session_start.

Конечно, это решило проблему, но это вызывает беспокойство.Почему этот, казалось бы, безобидный член файла global.asax нарушает вызовы wcf?

Это было полезно?

Решение

Да, это немного известная, но раздражающая проблема. Проблема сводится к включению состояния сеанса после добавления файла Global.Asax в свой веб-проект. Как только состояние сеанса включено, сервер будет выполнять только последовательно вызовы. Вот две статьи с более подробной информацией:

http://blogs.msdn.com/b/silverlightwss/chive/2009/09/30/having-a-pollingduplex-service-and-any-other-wcf-service-in-s-same-website-causes- Silverlight-calls to-slow.aspx

http://weblogs.ass.asp.net/olakarlsson/Archive/2010/05/20/simultНально-calling-multiple-methods-on-s-wcf-service-from-silverlight.aspx.

Это происходит только при использовании сети браузера, поэтому ваши опции:

  1. Отключить состояние сеанса в вашем веб-проекте или
  2. Используйте стек клиентской сети

Надеюсь это поможет...

Крис

Другие советы

Существуют некоторые типы привязки, которые поддерживают доступ к данным сеанса asp.net, я действительно не понимаю, как это повлияет, если WCF не попытается подключиться к событию session_start, как это делает модуль http.Вы также можете использовать отражатель для дизассемблирования кода, в котором вы получили исключение.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top