您的位置:首页 > 数据库

一个简单实用的“数据库访问层”!(基于C#语言)

2009-02-16 15:15 736 查看
我从学习Asp.Net(C#)开始到将其作为谋生工具至今已18月有余,当初有那么一阵对.NET的CLR很似痴迷,对C#2.0所带来

的新特性也疯狂不已。因为工作环境所迫,已经很久没有使用VS2005/2008作为自己的IDE了,一直在VS2003中煎熬的感觉已

经让我失去了对痛苦的理解,或许这也是逼迫我逐步转向前端开发的一个原动力吧。

这个“数据库访问层”的诞生是在我接触.NET和SQL Sever半年之后,在“师傅”的指点下通过硬背下代码,再到后来逐步

加深对其实质的理解,能够按照师傅的要求在18分钟准确无误的书写下每一行代码,那时所获得满足感,或许只有曾经有过类似

经历的“战友”们才能体味。

该“数据库访问层”还有许多不太完善的地方,例如缺少事务的处理(对于现在我的来说,一般喜欢放在存储过程来完成)等,

希望下列代码对大家有所帮助:

DBAccessFactory 部分代码

using System;

using System.Collections.Generic;

using System.Text;

using System.Data;

using System.Data.SqlClient;

using System.Data.Odbc;

using System.Data.OleDb;

using System.Data.OracleClient;

namespace DBAccessLayer

{

#region 访问数据库类型的枚举

/// <summary>

/// 名称: DBAccessType

/// 功能: 访问数据库类型的枚举

/// 作者: 张 亮

/// 版本: V1.0

/// 时间: 2008年5月14日

/// 修改人:

/// 修改时间:

/// 修改描述:

/// </summary>

public enum DBAccessType

{

SQL, // 以Sql形式访问数据库

ODBC, // 以Odbc形式访问数据库

OLEDB, // 以OleDb形式访问数据库

ORACLE // 以Oracle形式访问数据库

}

#endregion

#region 数据库访问工厂类

/// <summary>

/// 名称: DBAccessFactory

/// 功能: 数据库访问工厂类

/// 作者: 张 亮

/// 版本: V1.0

/// 时间: 2008年5月14日

/// 修改人:

/// 修改时间:

/// 修改描述:

/// </summary>

public class DBFactory

{

#region 获取数据库访问对象的静态方法

/// <summary>

/// 获取数据库访问对象的静态方法

/// </summary>

/// <param name="type">数据库访问的类型</param>

/// <param name="connectionString">访问数据库的连接字符串</param>

/// <returns>返回数据库访问对象(dbAccess)</returns>

public static IDBAccess GetDBAccess(DBAccessType type, string connectionString)

{

IDBAccess dbAccess = null;

switch (type)

{

case DBAccessType.SQL:

dbAccess = new DBAccess<SqlConnection, SqlCommand, SqlDataAdapter>(connectionString);

break;

case DBAccessType.ODBC:

dbAccess = new DBAccess<OdbcConnection, OdbcCommand, OdbcDataAdapter>(connectionString);

break;

case DBAccessType.OLEDB:

dbAccess = new DBAccess<OleDbConnection, OleDbCommand, OleDbDataAdapter>(connectionString);

break;

case DBAccessType.ORACLE:

dbAccess = new DBAccess<OracleConnection, OracleCommand, OracleDataAdapter>(connectionString);

break;

}

return dbAccess;

}

#endregion

}

#endregion

}

以上即是“数据库访问层”的完整部分,注释应该很详细了,代码细节我就不多说了,大家花费一点宝贵的时间仔细的把代码看完

应该就很清楚了。或许以上代码对刚接触.NET不久的新手带来一点点困惑,因为代码中用到接口、泛型、工厂模式等概念,最终希望我

的这点奉献精神能带给大家一点帮助,呵呵。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐