2016-12-14 7 views
1

Ich versuche, E-Mails in Office 365 mit Microsoft.Exchange.WebServices.dll (EWS Apis)Microsoft.Exchange.WebServices: Daten können nicht auf die Transportverbindung geschrieben werden: Eine bestehende Verbindung wurde vom Remote-Host zwangsweise geschlossen

zu speichern
 EmailMessage f_ObjEWSMail = new EmailMessage(objExchangeService); 
    f_ObjEWSMail.Save(p_objFoderID); // Throwing error here 

Es wirft Ausnahme zufällig:

Daten können nicht von der Transportverbindung lesen: Eine vorhandene Verbindung wurde vom Remotehost geschlossen.

bei System.Net.Security._SslStream.EndRead (IAsyncResult asyncResult)

bei System.Net.TlsStream.EndRead (IAsyncResult asyncResult)

bei System.Net.PooledStream.EndRead (IAsyncResult asyncResult)

bei System.Net.Connection.ReadCallback (IAsyncResult asyncResult)

oder manchmal es wirft:

Die Anfrage ist fehlgeschlagen. Die zugrunde liegende Verbindung wurde geschlossen: Bei einem Empfang ist ein unerwarteter Fehler aufgetreten.

Stapel Strace :: at Microsoft.Exchange.WebServices.Data.ServiceRequestBase.GetEwsHttpWebResponse (IEwsHttpWebRequest Anfrage) bei Microsoft.Exchange.WebServices.Data.ServiceRequestBase.ValidateAndEmitRequest (IEwsHttpWebRequest & Anfrage) bei Microsoft.Exchange.WebServices. Data.MultiResponseServiceRequest 1.Execute() at Microsoft.Exchange.WebServices.Data.ExchangeService.InternalCreateItems(IEnumerable 1 Artikel, FolderID parentFolderId, Nullable 1 messageDisposition, Nullable 1 sendInvitationsMode, ServiceErrorHandling Errorhandling) bei Microsoft.Exchange.WebServices.Data.Item.InternalCreate (FolderID parentFolderId, Nullable 1 messageDisposition, Nullable 1 sendInvitationsMode) bei Microsoft.Exchange.WebServices.Data. Item.Save (FolderId parentFolderId) bei Aus ice365EWSWriter.Office365Engine.SaveMail (Emailmessage p_objEWSMailItem, FolderID p_objFoderID)

Bitte vorschlagen Lösung.

+0

Hallo Renuka, Was ist 'MailMessageObj' im obigen Code? und Sie holen E-Mail-Nachricht von welchem ​​E-Mail-Konto? –

+0

sorry .. Es f_ObjEWSMail .. – Renuka

+0

Es wäre toll, wenn Sie einige weitere Informationen über den Code hinzufügen, die Sie verwenden. –

Antwort

-1

Diese Fehler sind auf Probleme mit der zugrunde liegenden Transportkonnektivität zurückzuführen (z. B. Ihre Netzwerkverbindung zur Cloud), da Sie das Netzwerk zu 100% nicht garantieren können (zB vs Onprem, wo Sie gerade eine Verbindung zum Server herstellen) über einen Schalter). Alles, was Sie in diesem Fall tun können, ist den Fehler abzufangen und es erneut zu versuchen. Die EWS Managed API verwendet HttpWebRequest zum Senden und Empfangen der SOAP-Pakete, so dass diese Fehler von dieser Klasse auf dem Client generiert werden (wenn Sie diese Fehler weiter verfolgen möchten, würde ich vorschlagen, Stackoverflow nach diesen Fehlern für diese Klasse zu durchsuchen). Wenn Sie versuchen, Ihren Code von einer cloudbasierten virtuellen Maschine (oder einem Dienst) wie AWS oder Azure zu verwenden, sollten Sie die Anzahl dieser Fehler viel niedriger finden, da die zugrunde liegende Netzwerkverbindung wesentlich zuverlässiger ist.

Verwandte Themen