【发布时间】:2014-10-04 04:54:51
【问题描述】:
背景:我正在为 Windows 应用程序编写一个 C# 类,该类将充当一个包含自定义错误检查的自定义 Sql Server 类。并且这个类将允许一般的 SQL 功能:执行查询、连接到数据库、关闭连接等。
我的场景是这样的:我需要同时连接两个独立的数据库。但是我想实现单例模式,以便每个数据库只能建立一个连接(因此一次总共打开两个连接,但每个数据库一个连接)。我想阻止与任一数据库建立第二个连接。
我考虑过享元模式,但我认为这不适用于这种情况,如果我能让单例模式以某种方式工作,那将是更好的解决方案......我总是可以不使用单例并有两个数据库对象,或者我可以在类中创建一个“打开”标志,以便在请求新连接时检查现有连接是否打开,并根据该标志进行处理...
想法/我该怎么做?
【问题讨论】:
-
我很好奇,您为什么要阻止与数据库建立多个连接?在常规的 SQL Server 数据库场景中,最好为单个操作打开和关闭连接,而不是让它们长时间打开。
标签: singleton