在 ExceptionHandlingMiddleware.cs 中添加了对 SqlSugarException 异常的处理逻辑。当捕获到 SqlSugarException 异常时,如果异常信息包含 "timeout",则返回状态码 204 并提示 "数据库连接超时,请稍后重试。",否则返回异常信息。 在 appsettings.json 中更新了数据库连接字符串,为 OA2023DB 和 OA2014DB 添加了 Connect Timeout=30 参数。
@@ -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;
@@ -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",