如何从C#中的Windows服务连接到不同的数据库(sqlserver)

时间:2012-01-17 12:21:52

标签: c# windows service

我的Windows服务应该连接到不同的数据库并从中获取数据(multitenent)。并且每个连接都保持独立的线程。这可能吗?

数据库信息在XML文件中可用。

是否有人建议如何做到这一点?

1 个答案:

答案 0 :(得分:0)

Windows服务一直在运行,当您在各种配置文件中包含数据库详细信息时,您可以从那里读取连接字符串。

在构造代码时,服务与控制台程序没有什么不同,除了ServiceManager需要的那些位。

因此,构造代码使得主逻辑与数据库无关,即它不关心数据层接口之外的什么,只知道它知道接口是什么。

查看存储库和工厂模式。这些将有所帮助。然后,您可以通过读取配置文件所说的内容,在运行时创建正确数据库类的具体实例。

请记住,该服务将始终运行(除非设置为手动触发),并且如果找不到配置文件,它可以安静地失败。