【问题标题】:Azure Based OData Query Failure with Socket Errors基于 Azure 的 OData 查询失败并出现套接字错误
【发布时间】:2018-11-12 23:42:21
【问题描述】:

我有三个应用程序在 Azure 上查询相同的数据服务。一个没有问题,但其中两个收到“错误。他们正在使用 Linq 查询,即“System.Linq.IQueryable queryResult = entity.Accts.Where(a => a.AN == "XXX");"

错误是: 1. WebException:底层连接已关闭:发送时发生意外错误。 2. IOException: Unable to read data from the transport connection: 一个已存在的连接被远程主机强行关闭。 3. SocketException: 一个已存在的连接被远程主机强行关闭

有趣的是,从失败的应用程序捕获实际发送的“请求”通信消息并在浏览器中使用它们后,我得到了很好的响应,而不是错误。

我实际上从工作应用程序中获取了 OData 连接文件的副本,并使用它们在失败的应用程序的副本中替换它们的等价物,但没有成功;同样的错误。

想法?

【问题讨论】:

    标签: azure-devops odata


    【解决方案1】:

    与 MS 合作,似乎有一个新协议正在生效,需要在我们的代码中添加以下语句:

                System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
    

    【讨论】:

    • 对此还有什么解释吗?为什么需要它?这如何解决问题?
    • 实际上,在 MS Support 的帮助下,最终我发现 Azure 数据库已重命名,因为我创建了新的 SQL Server 以准备扩展并将数据库移至它们。在移动过程中,数据库名称附加了数据/时间戳,需要我更改连接字符串。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-07-18
    • 2013-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    • 2021-08-10
    相关资源
    最近更新 更多