Silverlight 3 WCF-Dienst `CommunicationException` Server hat folgenden Fehler zurückgegeben: NotFound

Ich habe eine Silverlight 3-Anwendung, die in 95% der Fälle erfolgreich Daten von einem WCF-Dienst (in derselben Webanwendung) anfordert und anzeigt.

Dies geschieht in der Regel selten, wenn ich den Dienst ein paar Mal schnell erreiche. Manchmal geschieht dies jedoch auch bei einer einzelnen Anforderung.

Von Zeit zu Zeit erhalte ich eine von zwei Ausnahmen, wenn ich in kurzer Zeit viele Transaktionen anfordereReference.cs Datei in derEndMyMethod(System.IAsyncResult result).

Es gibt einige Methoden, und die Ausnahmen treten bei einer beliebigen Anzahl von ihnen auf. Der erste ist einTimeoutException() was ich verstehe und es macht Sinn, die zweite, die ich überhaupt nicht verstehe, ist die "CommunicationException() wurde vom Benutzercode nicht behandelt: Der Remoteserver gab einen Fehler zurück: NotFound. "

Ich habe gesetzttry..catch blockiert beide um die.MyMethodAsync() und im Handler fürMyMethodCompleted beides ohne erfolg, da die ausnahme im generierten auftrittReference.cs Datei.

Jede Hilfe wird sehr geschätzt.

aktualisieren

Reference.cs - generiert durch "Add Service Reference"

public System.IAsyncResult BeginTogglePicked(string ID, string toggle, System.AsyncCallback callback, object asyncState) 
{
   object[] _args = new object[2];
   _args[0] = ID;
   _args[1] = toggle;
   System.IAsyncResult _result = base.BeginInvoke("TogglePicked", _args, callback, asyncState);
   return _result;
}

public void EndTogglePicked(System.IAsyncResult result) 
{
   object[] _args = new object[0];
   // This is the line where the Exception is Thrown
   base.EndInvoke("TogglePicked", _args, result);
}

Code aufrufen -pickedIDs ist eine Liste von Strings unduserIDSelecting ist eine Zeichenfolge, die oben in der Prozedur definiert wird. Der Event-Handlermdc_TogglePIckedCompleted ist im Moment leer.

MapDataClient mdc = new MyDataClient();
mdc.TogglePickedCompleted += new EventHandler<System.ComponentModel.AsyncCompletedEventArgs>(mdc_TogglePickedCompleted);

foreach (string id in pickedIDs)
{
    mdc.TogglePickedAsync(id, userIDSelecting, mdc);
}

Update 2

Dies ist die "InnerException" der CommunicationException:System.Net.WebException: The remote server returned an error: NotFound.

Ich bin mir nicht sicher, ob dies hilfreicher ist, da es keine zusätzlichen Details gibt. Wie gesagt, geschieht dies nicht jedes Mal, wenn ich eine Dienstmethode aufrufe. Ich möchte auch darauf hinweisen, dass derselbe Anruf manchmal funktioniert und nicht andere. Ich glaube, dieses Problem liegt daran, dass IIS nicht auf meine Serviceanrufe reagiert.

Update 3

Wenn ich intermientent meine, meine ich truel intrmitent. Dies kann nur einmal in einer Benutzersitzung und nur in einer von fünfzig Sitzungen auftreten. Es ist nicht alles oder nichts. Die aufrufende Anwendung wird auf derselben "Website" wie der WCF-Dienst gehostet. Ich glaube nicht, dass eine clintaccesspolicy.xml das Problem ist, aber ich könnte mich irren.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage