DbUtils

`

 public class DbUtils
{
    private static object _obj = new object();
    private static IDbConnection _connection = null;
    public static IDbConnection Main
    {
        get
        {
            IDbConnection dbContext = new SqlConnection(ConfigurationManager.ConnectionStrings["Default"].ConnectionString);
            return dbContext;
        }
    }
    public static SQLiteConnection SqliteConnection
    {
        get
        {
            SQLiteConnectionStringBuilder sb = new SQLiteConnectionStringBuilder();
            sb.DataSource = Configs.DbPath;
            sb.Version = 3;
            sb.Password = Configs.DbPassWord;
            SQLiteConnection connection = null;

            if (connection == null)
            {
                lock (_obj)
                {
                    if (connection == null)
                    {
                        connection = new SQLiteConnection(sb.ToString());
                    }
                }
            }
            return connection;
        }
    }
    /// <summary>
    /// using写法
    /// </summary>
    public static IDbConnection SqlServerConnection
    {
        get
        {
            IDbConnection connection = null;
            if (connection == null)
            {
                lock (_obj)
                {
                    if (connection == null)
                    {
                        connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Default"].ConnectionString);
                    }
                }
            }
            return connection;
        }
    }
    /// <summary>
    /// 单例
    /// </summary>
    /// <returns></returns>
    public static IDbConnection SqlServerInstance()
    {
        if (_connection == null)
        {
            lock (_obj)
            {
                if (_connection == null) // double-check
                {
                    _connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Default"].ConnectionString);
                }
            }
        }
        return _connection;
    }
}

`

原文地址:https://www.cnblogs.com/wangyinlon/p/13888924.html