Implementing Database Connection as a Singleton:using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Data.Odbc;
using System.Data.OleDb;
namespace ConnectionFactory {
enum DataProvider { SqlServer, OleDb, Odbc, None }
public class ConnectionSingletone {
private static IDbConnection instance;
private ConnectionSingletone() { }
static IDbConnection GetConnection(DataProvider dp) {
if (instance == null) {
switch (dp) {
case DataProvider.SqlServer:
instance = new SqlConnection();
break;
case DataProvider.Odbc:
instance = new OdbcConnection();
break;
case DataProvider.OleDb:
instance = new OleDbConnection();
break;
}
}
return instance;
}
}
}
references:
msdn singletone
Singletone pattern