Ошибка Silverlight WCF - PullRequest
       6

Ошибка Silverlight WCF

0 голосов
/ 15 февраля 2011

Если я оставляю свое приложение Silverlight в течение 10 минут или около того, а затем вызываю метод мыла, я получаю следующий стек:

{System.ServiceModel.CommunicationException: Удаленный сервер вернул ошибку: Не обнаружена. ---> System.Net.WebException: удаленный сервер вернул ошибку: NotFound. ---> System.Net.WebException: удаленный сервер возвратил ошибку: Не обнаружена. в System.Net.Browser.ClientHttpWebRequest.InternalEndGetResponse (IAsyncResult asyncResult) в System.Net.Browser.ClientHttpWebRequest. <> C_ DisplayClass5.b _4 (Object sendState) в System.Net.Browser.AsyncHelper. <> C_ DisplayClass2.b _0 (объект sendState) --- конец внутреннего трассировка стека исключений --- в System.Net.Browser.AsyncHelper.BeginOnUI (SendOrPostCallback beginMethod, состояние объекта) в System.Net.Browser.ClientHttpWebRequest.EndGetResponse (IAsyncResult asyncResult) в System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelAsyncRequest.CompleteGetResponse (IAsyncResult результат) --- Конец внутреннего исключения трассировка стека --- в System.ServiceModel.AsyncResult.End [TAsyncResult] (IAsyncResult результат) в System.ServiceModel.Channels.ServiceChannel.EndCall (String действие, Object [] ауты, IAsyncResult результат) в System.ServiceModel.ClientBase 1.ChannelBase 1.EndInvoke (String methodName, Object [] args, Результат IAsyncResult) в BlueForums.Blue.BlueClient.BlueClientChannel.EndThreadViewIncrement (IAsyncResult результат) в BlueForums.Blue.BlueClient.BlueForums.Blue.IBlue.EndThreadViewIncrement (IAsyncResult результат) в BlueForums.Blue.BlueClient.OnEndThreadViewIncrement (IAsyncResult результат) в System.ServiceModel.ClientBase`1.OnAsyncCallCompleted (IAsyncResult результат)}

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

У кого-нибудь есть идеи?

Ответы [ 3 ]

0 голосов
/ 15 февраля 2011

Я нашел Скрипач , который может помочь, научитесь использовать его, это сэкономит вам много времени

0 голосов
/ 15 февраля 2011

Раньше у меня была эта проблема, похоже, она возникает только в IE.

Если для службы требуется время ожидания, сбросить соединение, перезапустить (IIS перезапускает службу, когда к ней нет доступа), илипотеря соединения, тогда IE больше не будет пытаться связаться со службой WCF, даже если вы перезапустите службу.

Недавно я начал использовать IE9 RC, и это поведение, похоже, исправлено.В любом случае, если приложение silverlight пытается связаться с сервером, и оно по какой-либо причине недоступно, то каждый вызов с этого момента будет не только сбой, но и IE даже не попытается связаться с вашим сервисом.

Следовательно, при входе в WCF вызов вообще не будет отображаться, в Firefox используется Firebug, и вы увидите, что приложение silverlight пытается выполнить вызов через 10 минут или около того.

Попробуйте сделать это.

0 голосов
/ 15 февраля 2011

К сожалению, из-за изолированной среды Silverlight вы получите ошибку NotFound для ANY ошибки, которая происходит с вашим веб-сервисом. Поэтому, если вы хотите узнать, в чем на самом деле ошибка, вам нужно включить трассировку веб-службы.

...