2009-06-02 4 views
1

Ich habe WCF-Dienst, um Benutzer aus dem ActiveDirectory zu erhalten. Ich empfange Parameter von der Anfrage (Benutzername) und erstelle Antwort mit der MembershipUser-Eigenschaft. aus irgendeinem Grund, die Verbindung zu schließen. Die Serviceoperation findet den Benutzer und erstellt die Antwort erfolgreich. beim Ausführen der Zeile: "Antwort zurückgeben" Ich habe eine Ausnahme auf der Client-Seite. Ausnahme: Die zugrunde liegende Verbindung wurde geschlossen: Die Verbindung wurde unerwartet innere Ausnahme geschlossen: Response = null Status = System.Net.WebExceptionStatus.ConnectionClosedReturn MembershipUser mit WCF-Dienst

Dank!

+0

Können Sie Ihren Code hinzufügen? –

Antwort

2

i den Fehler gefunden, die WCF-Trace verwenden. Der Fehler war, dass der XmlSeriazier den MembershipUser nicht serialisieren konnte, obwohl er serialisierbar war, da er auch SecurityAttribute enthielt. Quelle:

http://support.microsoft.com/kb/326971

+4

Wenn Sie es mit der Ablaufverfolgung gefunden haben, markieren Sie meine Antwort als Antwort. –

+0

, weil die Frage war, "warum MembershipUser nicht auf dem Client serialisiert werden kann". Die richtige Antwort ist die, die ich unten geschrieben habe. Ihre Antwort war sehr hilfreich für mich, aber trotzdem habe ich Ihre Antwort als hilfreich markiert, aber es war nicht die Antwort. Entschuldigung, und ich bin wirklich danke – Tamir

+3

Ihre ursprüngliche "Frage" enthält eigentlich keine Fragen (beachten Sie, dass Sie keine Fragezeichen (?) haben ... Ich habe einen Stich in was Sie fragen könnten, die ich verstanden zu sein "wie um herauszufinden, was falsch ist ", da du keine Fehlermeldung zu haben scheinst. Ich werde es dieses Mal loslassen, aber du solltest vorsichtig mit deinen Fragen hier sein ... du könntest von anderen einen schlechten Willen bekommen die ein wenig Zeit damit verbringen, deine Probleme für dich zu erforschen. –

8

Aktivieren Sie die WCF-Diagnoseprotokollierung, um den Fehler zu erkennen, der zum Schließen der Verbindung geführt hat. Es könnte auf dem Client oder dem Dienst entstehen, also müssen Sie es für beide Seiten aktivieren.

Wie die Ablaufverfolgung: http://msdn.microsoft.com/en-us/library/ms733025.aspx

den Service Trace Viewer Verwendung von Trace-Protokolle zu lesen: http://msdn.microsoft.com/en-us/library/aa751795(VS.85).aspx

+2

War die Suche hilfreich, um diesen Fehler zu finden? Wenn dies der Fall ist, markieren Sie dies als Antwort. Wenn nicht, posten Sie bitte Ihre Methodik zur Identifizierung des Problems, damit andere davon profitieren können. –