1

我有一个用 c# 编写的 windows 服务,它在运行时连接到一个 sql server 数据库。

当服务首次启动时,它会连接到数据库以获取服务运行所需的各种信息。

该服务设置为在安装它的服务器重新启动时自动启动。

如果服务在 sql server 服务启动之前启动。我的服务在启动时显然在尝试连接到数据库时出现初始执行错误。为了解决这个问题,如果发生异常,我在尝试再次连接到数据库之前添加了一个短暂的延迟,我会继续这个 n 次直到它连接

我的问题是,是否有任何替代解决方案可以替代我已经在做的事情

谢谢

4

1 回答 1

1

使您的服务依赖于 SQL Server,使用“sc”完成。

使用轮询,就像你现在所做的那样,如果你的服务在 SQL Server 之后启动,你仍然需要它,因为你永远无法确定 SQL Server 那时已经完全启动。

于 2013-03-28T21:15:16.760 回答