可能重复:
SqlConnection Singleton
这是当前代码:
static SqlConnection CreateConnection() {
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["IMS"].ConnectionString);
return conn;
}
因为应用程序只需要一个打开的连接,我想将它移到这种设计模式中。如何将上面的内容翻译成下面的内容?
public sealed class Singleton
{
private Singleton()
{
}
public static Singleton Instance { get { return Nested.instance; } }
private class Nested
{
// Explicit static constructor to tell C# compiler
// not to mark type as beforefieldinit
static Nested()
{
}
internal static readonly Singleton instance = new Singleton();
}
}
我刚刚从Jon Skeet 的网站上选择了这个模式——只是选择了完全懒惰的版本,因为它听起来是最好的选择——但可能不是正确的。