📄 dbfactory.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using System.Data.SqlClient;
using Oracle.DataAccess.Client;
namespace Qeb.Support.DataAccess
{
public sealed class DBFactory
{
static Hashtable m_dbUtilsHT = new Hashtable();
static Object thisLock = new Object();
static public IDBUtils GetDBUtils(DBUtilsType dbUtilsType)
{
lock (thisLock)
{
IDBUtils dbUtils = null;
if (m_dbUtilsHT.Contains(dbUtilsType.ToString()))
{
dbUtils = (IDBUtils)m_dbUtilsHT[dbUtilsType.ToString()];
}
else
{
string dbTypeString = AppConfig.GetValue(dbUtilsType.ToString() + "DbType").ToUpper().Trim();
string dbConnectString = AppConfig.GetDBConnection(dbUtilsType.ToString() + "Connection");
if (dbTypeString == "ORACLE")
{
dbUtils = new OracleDBUtils(dbConnectString);
m_dbUtilsHT.Add(dbUtilsType.ToString(), dbUtils);
}
else if (dbTypeString == "SQLSERVER")
{
throw new Exception("暂不支持SQLSERVER:" + dbUtilsType.ToString());
}
else
{
throw new Exception("未定义数据库类型:" + dbUtilsType.ToString());
}
}
return dbUtils;
}
}
static public void CloseAllDB()
{
IDBUtils dbUtils = null;
foreach (DictionaryEntry de in m_dbUtilsHT)
{
dbUtils = de.Value as IDBUtils;
if (dbUtils != null)
{
dbUtils.CloseDB();
}
}
}
}
public enum DBUtilsType
{
HIS,
LIS
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -