当前位置: 首页 > 知识库问答 >
问题:

Microsoft.Exchange.WebServices:无法将数据写入传输连接:远程主机已强制关闭现有连接

司空宣
2023-03-14

我正在尝试使用Microsoft.Exchange.WebServices.dll(EWS API)在office 365上保存电子邮件

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

它会随机抛出异常:

无法从传输连接读取数据:远程主机强制关闭了一个现有连接。

在System.Net.Security._SSLStream.EndRead(IAsyncResult asyncResult)

在system.net.tlsstream.endread(IAsyncResult asyncResult)

请提出解决方案。

共有1个答案

公冶翰池
2023-03-14

这些错误是由于底层传输连接(例如,您的网络连接到云)的问题造成的,因为处理云时,您不能100%地保证网络(例如,您只是通过交换机连接到服务器的Onprem)。在此实例中,您所能做的就是捕获错误并重试。EWS托管API使用HttpWebRequest来发送和接收SOAP数据包,因此这些错误是由该类在客户端生成的(如果您想进一步查找这些错误,那么我建议在该类上搜索Stackoverflow来查找这些错误)。如果您尝试使用基于云的虚拟机(或服务)(如AWS或Azure)中的代码,您会发现这些错误的实例要低得多,因为底层网络连接要可靠得多。

 类似资料:
  • 正如我前面所说的,我能够在visual studio的调试模式下使其正确工作,但一旦创建了可执行文件,我就不能再读取网页了。如有任何帮助,我们将不胜感激。是什么导致了这个问题?

  • 有人能帮我解决以下异常吗, 我正在使用Oracle OEPE eclipse和weblogic 12c。在我开始开发移动应用程序之前,它工作得很好。 我在eclipse中安装了以下插件。1.Android工具2。JBoos混合移动工具 我的电脑1上安装了以下开源软件。节点Js 2。科尔多瓦3。Ripple仿真器

  • 问题内容: 我正在使用他们的托管页面集成功能与替代付款进行集成。他们的C#SDK目前没有可用的集成,但是您可以看到它非常简单,我制作了一个小类来发送发布请求并获取JSON响应。 我测试了我在PostMan和cURL上发送的json对象,它们都可以工作,也可以使用身份验证标头,所以我认为它们不是问题。这是我的课程的构造函数: 以及我发布数据的方法: 然后,我在PostAsync行收到此错误:。这是错

  • 当使用Photobucket API时,它说... [SocketException(0x2746):远程主机强制关闭了现有连接]System.Net.Sockets.Socket.Receive(Byte[]缓冲区,Int32偏移量,Int32大小,SocketFlags SocketFlags)+139 System.Net.Sockets.NetworkStream.Read(Byte[]缓

  • 我正在尝试使用Azure Blob存储。我成功上传了一些图像,但突然我得到了错误: 远程主机强制关闭了现有连接 我研究了一下,每当我试图检查Blob容器是否存在时,都会引发异常。 这是我的代码: BlobClient getter属性:(注意,我已将连接字符串中的敏感数据标记为**) 抛出异常的实际代码: 准确地说,异常发生在我检查容器是否存在的行。 我不知道怎么了。我确信连接字符串是正确的(我复