WCF Probleme beim Übertragen an Client

06/04/2009 - 17:25 von Yvette Teiken | Report spam
Hallo NG,
Ich folgendes Problem mit WCF:
Ich habe zwei Services geschrieben, die beide relativ komplexe Objekte
übertragen. Beide Services arbeiten mit net.tcp und werden in der
Konsole von mir gehostet.

Wenn ich nun einen Client auf dem gleichen Rechner zu Testzwecken einen
Client schreibe bekomme ich beim Aufruf folgende Fehlermeldung bei einem
Service:

"Die Socketverbindung wurde abgebrochen. Dies kann durch einen Fehler
beim Verarbeiten der Nachricht, durch ein Überschreiten des
Empfangstimeouts durch den Remotehost oder durch eine Problem bei der
zugrundeliegenden Netzwerkressource verursacht sein. Lokaler
Sockettimeout: \"00:01:00\"."

Ich habe den Verlauf im Server nachverfolgt und es wird ein gültiges
Ergebnis zurück geschickt, aber am Client kommt das nichts an. Ich
bezweifle, dass es sich bei dem Fehler wirklich um ein Timeout handelt,
denn so lange làuft die Methode nicht, habe das Timeout aber auch schon
mal zu Testzwecken hoch gesetzt.

Es wàre schön, wenn jemand einen Tipp hàtte wie ich den Fehler auf die
Spur kommen könnte.
Besten Dank im Voraus
Yvette
 

Lesen sie die antworten

#1 Michael Ertelt
08/04/2009 - 08:30 | Warnen spam
Hallo,

du schreibst es handelt sich um komplexe Objekte, versuche doch mal
MaxItemsInObjectGraph zu verwenden.
Mit [ServiceBehavior(MaxItemsInObjectGraph = Int32.MaxValue] für die Service
Implementierung oder der Konfiguration.

Auf dem Client analog das gleiche, hier allerdings in der Konfiguration
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="ClientEndpointBehavior">
<dataContractSerializer maxItemsInObjectGraph="2147483647" />
</behavior>
</endpointBehaviors>
</behaviors>

ansonsten noch maxBufferSize und maxReceivedMessageSize des Bindings
entsprechend setzen

Viele Grüße


"Yvette Teiken" schrieb im Newsbeitrag
news:#
Hallo NG,
Ich folgendes Problem mit WCF:
Ich habe zwei Services geschrieben, die beide relativ komplexe Objekte
übertragen. Beide Services arbeiten mit net.tcp und werden in der Konsole
von mir gehostet.

Wenn ich nun einen Client auf dem gleichen Rechner zu Testzwecken einen
Client schreibe bekomme ich beim Aufruf folgende Fehlermeldung bei einem
Service:

"Die Socketverbindung wurde abgebrochen. Dies kann durch einen Fehler beim
Verarbeiten der Nachricht, durch ein Überschreiten des Empfangstimeouts
durch den Remotehost oder durch eine Problem bei der zugrundeliegenden
Netzwerkressource verursacht sein. Lokaler Sockettimeout: \"00:01:00\"."

Ich habe den Verlauf im Server nachverfolgt und es wird ein gültiges
Ergebnis zurück geschickt, aber am Client kommt das nichts an. Ich
bezweifle, dass es sich bei dem Fehler wirklich um ein Timeout handelt,
denn so lange làuft die Methode nicht, habe das Timeout aber auch schon
mal zu Testzwecken hoch gesetzt.

Es wàre schön, wenn jemand einen Tipp hàtte wie ich den Fehler auf die
Spur kommen könnte.
Besten Dank im Voraus
Yvette

Ähnliche fragen