ソースを参照

处理 SqlSugarException 异常并更新数据库连接字符串

在 ExceptionHandlingMiddleware.cs 中添加了对 SqlSugarException 异常的处理逻辑。当捕获到 SqlSugarException 异常时,如果异常信息包含 "timeout",则返回状态码 204 并提示 "数据库连接超时,请稍后重试。",否则返回异常信息。
在 appsettings.json 中更新了数据库连接字符串,为 OA2023DB 和 OA2014DB 添加了 Connect Timeout=30 参数。
LEIYI 4 ヶ月 前
コミット
a2723cec19
共有2 個のファイルを変更した7 個の追加2 個の削除を含む
  1. 5 0
      OASystem/OASystem.Api/Middlewares/ExceptionHandlingMiddleware.cs
  2. 2 2
      OASystem/OASystem.Api/appsettings.json

+ 5 - 0
OASystem/OASystem.Api/Middlewares/ExceptionHandlingMiddleware.cs

@@ -67,6 +67,11 @@
                     response.StatusCode = StatusCodes.Status404NotFound;
                     errorResponse.Msg = ex.Message;
                     break;
+                case SqlSugarException ex:
+                    response.StatusCode = StatusCodes.Status204NoContent;
+                    if (ex.Message.Contains("timeout")) errorResponse.Msg = $"数据库连接超时,请稍后重试。";
+                    else errorResponse.Msg = ex.Message;
+                    break;
                 default:
                     response.StatusCode = StatusCodes.Status500InternalServerError;
                     errorResponse.Msg = exception.Message;

+ 2 - 2
OASystem/OASystem.Api/appsettings.json

@@ -1,7 +1,7 @@
 {
   "ConnectionStrings": {
-    "OA2023DB": "server=132.232.92.186;uid=sa;pwd=Yjx@158291;database=OA2023DB;MultipleActiveResultSets=True;",
-    "OA2014DB": "server=132.232.92.186;uid=sa;pwd=Yjx@158291;database=OA2014;MultipleActiveResultSets=True;"
+    "OA2023DB": "server=132.232.92.186;uid=sa;pwd=Yjx@158291;database=OA2023DB;MultipleActiveResultSets=True;Connect Timeout=30;",
+    "OA2014DB": "server=132.232.92.186;uid=sa;pwd=Yjx@158291;database=OA2014;MultipleActiveResultSets=True;Connect Timeout=30;"
   },
   "ApiAccessTime": {
     "StartTime": "2025-01-09 15:00:00",