访问数据库的SQLHelper.cs如何写才是最优的? 几乎每个项目都会用到SQLHelper.cs,但是似乎我写的帮助类都不能满足每一个需求我想问的是怎样的SQLHelper.cs才能够做到通用的,希望给出你们项目中的SQLHelper.cs源码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://topic.csdn.net/u/20100804/17/b679ac5f-2eb5-4d10-ab6e-02644ce4b678.html?seed=961568589&r=67462960DBAccess.csusing System;using System.Data;using System.Data.SqlClient;using System.Collections.Generic;using System.Linq;using System.Text;namespace DBAccess{ public class SqlHelper:DBAccess { private List<SqlParameter> m_ListParameter = null; public DataTable ExecuteDataTable(string cmdText, params SqlParameter[] commandParameters) { DataSet ds = ExecuteDataSet(cmdText, commandParameters); if (null != ds) { if (0 != ds.Tables.Count) { return ds.Tables[0]; } else { return null; } } else { return null; } } public DataTable ExecuteDataTable(string cmdText) { return ExecuteDataTable(cmdText, GetParameters()); } public DataRow ExecuteDataRow(string cmdText, params SqlParameter[] commandParameters) { DataTable dt = ExecuteDataTable(cmdText, commandParameters); if (null != dt) { if (0 != dt.Rows.Count) { return dt.Rows[0]; } else { return null; } } else { return null; } } public DataRow ExecuteDataRow(string cmdText) { return ExecuteDataRow(cmdText, GetParameters()); } public int ExecuteNonQuery(string cmdText) { return ExecuteNonQuery(cmdText, GetParameters()); } public int ExecuteNonQuery(SqlTransaction trans, string cmdText) { return ExecuteNonQuery(trans, cmdText, GetParameters()); } public DataSet ExecuteDataSet(string cmdText) { return ExecuteDataSet(cmdText, GetParameters()); } public SqlDataReader ExecuteReader(string cmdText) { return ExecuteReader(cmdText, GetParameters()); } public object ExecuteScalar(string cmdText) { return ExecuteScalar(cmdText, GetParameters()); } private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value) { SqlParameter para = new SqlParameter(paraName, paraType); para.Value = value; return para; } private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value, int size) { SqlParameter para = new SqlParameter(paraName, paraType); para.Value = value; para.Size = size; return para; } public void AddParameter(string paraName, SqlDbType paraType, object value) { if (null == m_ListParameter) { m_ListParameter = new List<SqlParameter>(); } SqlParameter para = GetParameter(paraName, paraType, value); m_ListParameter.Add(para); } private SqlParameter[] GetParameters() { SqlParameter[] paras = null; if (null != m_ListParameter) { if (0 != m_ListParameter.Count) { paras = m_ListParameter.ToArray(); } m_ListParameter = null; } return paras; } }}SqlHelper.csusing System;using System.Data;using System.Data.SqlClient;using System.Collections.Generic;using System.Linq;using System.Text;namespace DBAccess{ public class SqlHelper:DBAccess { private List<SqlParameter> m_ListParameter = null; public DataTable ExecuteDataTable(string cmdText, params SqlParameter[] commandParameters) { DataSet ds = ExecuteDataSet(cmdText, commandParameters); if (null != ds) { if (0 != ds.Tables.Count) { return ds.Tables[0]; } else { return null; } } else { return null; } } public DataTable ExecuteDataTable(string cmdText) { return ExecuteDataTable(cmdText, GetParameters()); } public DataRow ExecuteDataRow(string cmdText, params SqlParameter[] commandParameters) { DataTable dt = ExecuteDataTable(cmdText, commandParameters); if (null != dt) { if (0 != dt.Rows.Count) { return dt.Rows[0]; } else { return null; } } else { return null; } } public DataRow ExecuteDataRow(string cmdText) { return ExecuteDataRow(cmdText, GetParameters()); } public int ExecuteNonQuery(string cmdText) { return ExecuteNonQuery(cmdText, GetParameters()); } public int ExecuteNonQuery(SqlTransaction trans, string cmdText) { return ExecuteNonQuery(trans, cmdText, GetParameters()); } public DataSet ExecuteDataSet(string cmdText) { return ExecuteDataSet(cmdText, GetParameters()); } public SqlDataReader ExecuteReader(string cmdText) { return ExecuteReader(cmdText, GetParameters()); } public object ExecuteScalar(string cmdText) { return ExecuteScalar(cmdText, GetParameters()); } private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value) { SqlParameter para = new SqlParameter(paraName, paraType); para.Value = value; return para; } private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value, int size) { SqlParameter para = new SqlParameter(paraName, paraType); para.Value = value; para.Size = size; return para; } public void AddParameter(string paraName, SqlDbType paraType, object value) { if (null == m_ListParameter) { m_ListParameter = new List<SqlParameter>(); } SqlParameter para = GetParameter(paraName, paraType, value); m_ListParameter.Add(para); } private SqlParameter[] GetParameters() { SqlParameter[] paras = null; if (null != m_ListParameter) { if (0 != m_ListParameter.Count) { paras = m_ListParameter.ToArray(); } m_ListParameter = null; } return paras; } }} DbHelper数据操作类,DbProviderFactories http://yaya123.blog.51cto.com/341518/99615 最近几个项目都没用SQLHelper.csSQLHelper.cs目前已经有非常成熟通用的了如果你目前的项目在用ADO.NET 可以找一下 可以看看Microsoft Enterprise Library 中的Data Access Application Block 下载:http://www.microsoft.com/downloads/details.aspx?familyid=BCB166F7-DD16-448B-A152-9845760D9B4C&displaylang=en 微软的SQLHelper.cs 很好很强大呀,基本常用的方法都有,你也 自己可以增加一些需要的方法,收集起来就成了自己的收藏了呀 C#中的引用类型 菜鸟求助 滚动条事件怎么实现? C#中使用c++的dll传递的string出现问题!!求助!! 日期和星期要怎么对应呢? App.config 文件需要自己添加吗? Sql 语句问题,帮忙看看 这段代码为何分页不成功 如何将dataview中的更改提交到dataset中? 怎么把这些编码转换为中文字符 C#如何读取word指定行数数据 超时时间已到。在操作完成之前超时时间已过或服务器未响应。
DBAccess.csusing System;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DBAccess
{
public class SqlHelper:DBAccess
{
private List<SqlParameter> m_ListParameter = null; public DataTable ExecuteDataTable(string cmdText, params SqlParameter[] commandParameters)
{
DataSet ds = ExecuteDataSet(cmdText, commandParameters);
if (null != ds)
{
if (0 != ds.Tables.Count)
{
return ds.Tables[0];
}
else
{
return null;
}
}
else
{
return null;
}
} public DataTable ExecuteDataTable(string cmdText)
{
return ExecuteDataTable(cmdText, GetParameters());
} public DataRow ExecuteDataRow(string cmdText, params SqlParameter[] commandParameters)
{
DataTable dt = ExecuteDataTable(cmdText, commandParameters);
if (null != dt)
{
if (0 != dt.Rows.Count)
{
return dt.Rows[0]; }
else
{
return null;
}
}
else
{
return null;
}
} public DataRow ExecuteDataRow(string cmdText)
{
return ExecuteDataRow(cmdText, GetParameters());
} public int ExecuteNonQuery(string cmdText)
{
return ExecuteNonQuery(cmdText, GetParameters());
}
public int ExecuteNonQuery(SqlTransaction trans, string cmdText)
{
return ExecuteNonQuery(trans, cmdText, GetParameters());
}
public DataSet ExecuteDataSet(string cmdText)
{
return ExecuteDataSet(cmdText, GetParameters());
}
public SqlDataReader ExecuteReader(string cmdText)
{
return ExecuteReader(cmdText, GetParameters());
}
public object ExecuteScalar(string cmdText)
{
return ExecuteScalar(cmdText, GetParameters());
} private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value)
{
SqlParameter para = new SqlParameter(paraName, paraType);
para.Value = value; return para;
} private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value, int size)
{
SqlParameter para = new SqlParameter(paraName, paraType);
para.Value = value;
para.Size = size;
return para;
} public void AddParameter(string paraName, SqlDbType paraType, object value)
{
if (null == m_ListParameter)
{
m_ListParameter = new List<SqlParameter>();
}
SqlParameter para = GetParameter(paraName, paraType, value);
m_ListParameter.Add(para);
} private SqlParameter[] GetParameters()
{
SqlParameter[] paras = null;
if (null != m_ListParameter)
{
if (0 != m_ListParameter.Count)
{
paras = m_ListParameter.ToArray();
}
m_ListParameter = null;
} return paras;
}
}
}SqlHelper.csusing System;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DBAccess
{
public class SqlHelper:DBAccess
{
private List<SqlParameter> m_ListParameter = null; public DataTable ExecuteDataTable(string cmdText, params SqlParameter[] commandParameters)
{
DataSet ds = ExecuteDataSet(cmdText, commandParameters);
if (null != ds)
{
if (0 != ds.Tables.Count)
{
return ds.Tables[0];
}
else
{
return null;
}
}
else
{
return null;
}
} public DataTable ExecuteDataTable(string cmdText)
{
return ExecuteDataTable(cmdText, GetParameters());
} public DataRow ExecuteDataRow(string cmdText, params SqlParameter[] commandParameters)
{
DataTable dt = ExecuteDataTable(cmdText, commandParameters);
if (null != dt)
{
if (0 != dt.Rows.Count)
{
return dt.Rows[0]; }
else
{
return null;
}
}
else
{
return null;
}
} public DataRow ExecuteDataRow(string cmdText)
{
return ExecuteDataRow(cmdText, GetParameters());
} public int ExecuteNonQuery(string cmdText)
{
return ExecuteNonQuery(cmdText, GetParameters());
}
public int ExecuteNonQuery(SqlTransaction trans, string cmdText)
{
return ExecuteNonQuery(trans, cmdText, GetParameters());
}
public DataSet ExecuteDataSet(string cmdText)
{
return ExecuteDataSet(cmdText, GetParameters());
}
public SqlDataReader ExecuteReader(string cmdText)
{
return ExecuteReader(cmdText, GetParameters());
}
public object ExecuteScalar(string cmdText)
{
return ExecuteScalar(cmdText, GetParameters());
} private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value)
{
SqlParameter para = new SqlParameter(paraName, paraType);
para.Value = value; return para;
} private SqlParameter GetParameter(string paraName, SqlDbType paraType, object value, int size)
{
SqlParameter para = new SqlParameter(paraName, paraType);
para.Value = value;
para.Size = size;
return para;
} public void AddParameter(string paraName, SqlDbType paraType, object value)
{
if (null == m_ListParameter)
{
m_ListParameter = new List<SqlParameter>();
}
SqlParameter para = GetParameter(paraName, paraType, value);
m_ListParameter.Add(para);
} private SqlParameter[] GetParameters()
{
SqlParameter[] paras = null;
if (null != m_ListParameter)
{
if (0 != m_ListParameter.Count)
{
paras = m_ListParameter.ToArray();
}
m_ListParameter = null;
} return paras;
}
}
}
http://www.microsoft.com/downloads/details.aspx?familyid=BCB166F7-DD16-448B-A152-9845760D9B4C&displaylang=en