SqlHelper.cs(数据库操作的封装起来)------->MODEL(将表结构转换成类)------>DAL(数据访问层)---------->BLL(业务逻辑层).
. 1.简单的SqlHelper代码
private static string connStr = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;//获得数据库信息
private static SqlConnection conn;//声明一个CONN
//创建通道
public static SqlConnection Conn
{
get {
//判断conn是否为空和链接状态是否是坏的
if (conn == null || conn.State == ConnectionState.Broken)
{
conn = new SqlConnection(connStr);
}
return SqlHelper.conn;
}
}
public static void OpenDB()
{
Conn.Open();//打开通道
}
public static void CloseDB()
{
Conn.Close();//关掉通道
}
#region 1.数据库的增,删,改操作
/// <summary>
/// 数据库的增,删,改
/// </summary>
/// <param name="sql"></param>
/// <param name="parameters"></param>
/// <returns></returns>
public static int ExecuteNonQuery(string sql, params SqlParameter[] parameters)
{
int result = 0;
OpenDB();//打开数据库连接
SqlCommand cmd = new SqlCommand(sql,conn);
if (parameters.Length > 0 && parameters != null)
{
cmd.Parameters.AddRange(parameters);
}
try
{
result = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
finally
{
CloseDB();//关掉数据库
}
return result;//返回影响行数
}
#endregion
#region 2.数据库的查询,返回一个数据表
/// <summary>
/// 数据库的查询,返回一个数据表
/// </summary>
/// <param name="sql"></param>
/// <param name="paramets"></param>
/// <returns></returns>
public static DataTable ExecuteAdapter(string sql, params SqlParameter[] paramets)
{
OpenDB();
SqlCommand cmd = new SqlCommand(sql,conn);
if (paramets != null && paramets.Length > 0)
{
cmd.Parameters.AddRange(paramets);
}
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
try
{
da.Fill(dt);
}
catch (Exception ex)
{
throw ex;
}
finally
{
CloseDB();//关掉数据库
}
return dt;
}
#endregion
#region 3.返回结果的第一行,第一列的object
/// <summary>
/// 返回结果的第一行,第一列
/// </summary>
/// <param name="sql"></param>
/// <param name="parameters"></param>
/// <returns></returns>
public static object ExecuteScalar(string sql, params SqlParameter[] parameters)
{
OpenDB();//打开数据库
object result = null;
SqlCommand cmd = new SqlCommand(sql,conn);
if (parameters != null && parameters.Length > 0)
{
cmd.Parameters.AddRange(parameters);//增加参数数组
}
try
{
result = cmd.ExecuteScalar();
}
catch (Exception ex)
{
}
finally
{
CloseDB();
}
return result; //返回值
}
#endregion
2.MODEL和DAL,BLL后面继续加上