.net core linux環境下 System.Data.SqlClient.SqlException: Connection Timeout Expired.


最近遇到了一個很奇葩的問題,我編寫了一個.net core程序讀取多個數據庫數據源,進行數據同步處理。該程序在windows環境下運行完全正常,但在linux環境下運行報異常,提示

System.Data.SqlClient.SqlException: Connection Timeout Expired. The timeout period elapsed during the post-login phase.

更奇葩的地方在於在linux環境下,兩個數據庫,一個讀取正常,一個讀取異常。我考慮了各種原因,端口問題,連接串問題,表名中文問題,視圖問題,ORM問題(從EF切換到dapper)始終無法定位真正的原因。

最后發現net core 的System.Data.SqlClient最低支持SqlServer 2008 R2 SP3,小於這個版本的就會報錯(見引用)。看來.net core不是銀彈,坑還是有的。

引用:

https://www.cnblogs.com/xiaxiaolu/p/10309064.html>
https://github.com/dotnet/corefx/issues/9719


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM