gpt4 book ai didi

c# - 如何处理数据库异常/问题?

转载 作者:行者123 更新时间:2023-11-30 19:46:39 24 4
gpt4 key购买 nike

我的一个c#应用程序,我编写了如下的sql连接代码

try 
{
myConnection = new SqlConnection(m_resourceDB.GetResourceString(nSiteID, ApplicationID.XClaim,(short)nResID ) );
myConnection.open();
}

我想处理 sqlserver 的未知问题,例如数据库关闭、超时。

为此,我虽然引入了 3 次 for 循环,循环之间有 3 分钟的 sleep ,如果存在所有问题,那么我将退出循环

不知道我的想法对不对?我需要一些专家的建议吗?有什么例子吗?

最佳答案

我想简单地说:与连接等通信的代码不应该进行休眠/重试,除非该代码已经是异步的。如果顶级调用 代码想要捕获异常并设置一个计时器(而不是 sleep )并重试,那么很好 - 但您想要避免的是:

var data = dal.GetInfo();

突然用了3分钟。如果它是一个异步/回调,您可能会逃避它,并且您已经明确宣传该方法可能需要几分钟才能执行。但即便如此,也感觉有些牵强。如果您负责应用程序逻辑,为什么不在第一时间捕获异常,告诉用户,并让用户在将来的某个时间点再次点击按钮?

关于c# - 如何处理数据库异常/问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8307516/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com