优点:
1、多数据库支持
2、多数据库类型支持
3、强大的查询公用方法,如支持返回泛型实体对象集合,泛型值类型集合,实体对象,数据集等。
4、所有方法都支持参数化与非参数化访问db,调用十分方便。
5、使用了线程本地存储,使之能支持在业务逻辑层显式控制事务。
6、注释较为详细,配置十分简单,方法较为简洁(加上注释总共200多行代码)。
7、开源,容易修改。
源代码:
public class DBManager
{
/// <summary>
/// 默认的数据库连接
/// </summary>
public static readonly string connectionString = ConfigurationManager.AppSettings["ConnectionString"];
/// <summary>
/// 数据库类型 默认支持sqlserver数据库
/// </summary>
public static readonly string dbProviderName = string.IsNullOrEmpty(ConfigurationManager.AppSettings["dbProviderName"])
? "System.Data.SqlClient" : ConfigurationManager.AppSettings["dbProviderName"];
[ThreadStatic]
static DBHelper helper;
/// <summary>
/// 创建默认的数据库访问类
/// </summary>
/// <returns></returns>
public static DBHelper Instance()
{
if (helper == null)
{
helper = new DBHelper(connectionString, dbProviderName);
return helper;
}
return helper;
}
}
{
/// <summary>
/// 默认的数据库连接
/// </summary>
public static readonly string connectionString = ConfigurationManager.AppSettings["ConnectionString"];
/// <summary>
/// 数据库类型 默认支持sqlserver数据库
/// </summary>
public static readonly string dbProviderName = string.IsNullOrEmpty(ConfigurationManager.AppSettings["dbProviderName"])
? "System.Data.SqlClient" : ConfigurationManager.AppSettings["dbProviderName"];
[ThreadStatic]
static DBHelper helper;
/// <summary>
/// 创建默认的数据库访问类
/// </summary>
/// <returns></returns>
public static DBHelper Instance()
{
if (helper == null)
{
helper = new DBHelper(connectionString, dbProviderName);
return helper;
}
return helper;
}
}