源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Asp.Net 通用数据操作类 (附通用数据基类)第1/2页

  • 时间:2022-03-25 13:03 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Asp.Net 通用数据操作类 (附通用数据基类)第1/2页
文章内容为本站编辑,创作.你可以任意转载、发布、使用但请务必以明文标注文章原始出处及本声明 http://www.opent.cn  作者:浪淘沙 此贴的方法会持续更新, 此文件要引用与数据操作的基类 using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; namespace EC {     /// <summary>     /// EB通用与数据交互操作基类     /// </summary>     public class EBCommonObj:IDisposable     {         private bool _alreadyDispose = false;         private DBOperate dbo;         private string sql = null;         private System.Data.DataSet ds;         #region 构造与析构函数         public EBCommonObj()         {             dbo = new DBOperate();         }         ~EBCommonObj()         {             dbo.Dispose();             Dispose();         }         protected virtual void Dispose(bool isDisposing)         {             if (_alreadyDispose) return;             if (isDisposing)             {                 dbo.Dispose();             }             _alreadyDispose = true;         }         #endregion         #region IDisposable 成员         public void Dispose()         {             Dispose(true);             GC.SuppressFinalize(this);         }         #endregion         #region 通用删除数据库中的某条记录         /// <summary>         /// 通用删除数据库中的某条记录         /// </summary>         /// <param name="tbl">数据表名</param>         /// <param name="fld">字段名</param>         /// <param name="IsInt">是否是int型</param>         /// <param name="kev">关键词值</param>         public void CommDelByID(string tbl, string fld, bool IsInt, string key)         {             sql = "delete from {0} where {1}=";             if (IsInt)             {                 sql += "{3}";             }             else             {                 sql += "'{3}'";             }             dbo.ExecuteNonQuery(string.Format(sql, tbl, fld, IsInt, key));         }         #endregion         #region 通用读取数据库中的某条记录         /// <summary>         /// 通用读取数据库中的某条记录         /// </summary>         /// <param name="tbl"></param>         /// <param name="fld"></param>         /// <param name="IsInt"></param>         /// <param name="key"></param>         /// <returns></returns>         public DataSet CommReadByID(string tbl,string fld,bool IsInt,string key)         {             sql = "select * from {0} where {1}=";             if (IsInt)             {                 sql += "{3}";             }             else             {                 sql += "'{3}'";             }             ds = dbo.GetDataSet(string.Format(sql, tbl, fld, IsInt, key));             return ds;                 }         #endregion         #region 修改数据库中的某条记录为true 或flase         /// <summary>         /// 修改数据库中的某条记录为true 或flase         /// </summary>         /// <param name="tbl">表格式</param>         /// <param name="fld">主键标识</param>         /// <param name="Isint">是否整形</param>         /// <param name="key">主键</param>         /// <param name="flgfld">flase键</param>         /// <param name="flgkey">key值</param>         public void CommUpdateByID(string tbl,string fld,bool Isint,string key,string flgfld,int flgkey)         {             sql = "update {0} set {4}={5} where {1}=";             if (Isint)             {                 sql += "{3}";             }             else             {                 sql += "'{3}'";             }             dbo.ExecuteNonQuery(string.Format(sql, tbl, fld, Isint, key, flgfld, flgkey));         }         #endregion         #region 绑定DropDown 列表         /// <summary>         /// 绑定DropDown 列表         /// </summary>         /// <param name="tbl">表名</param>         /// <param name="selValue">下拉框值</param>         /// <param name="selText">下拉框显示内容</param>         /// <param name="strWhere">where 条件语句 不用加where 没有条件则为空</param>         /// <param name="dr">DropDownList控件名称</param>         public void DropBind(string tbl, string selValue, string selText, string strWhere,System.Web.UI.WebControls.DropDownList dr)         {             ds = GetDrop(tbl, selValue, selText, strWhere);             dr.DataSource = ds;             dr.DataTextField = selText;             dr.DataValueField = selValue;             dr.DataBind();             ds.Clear();             ds.Dispose();         }         /// <summary>         /// 读取表中数据         /// </summary>         /// <param name="tbl"></param>         /// <param name="selValue"></param>         /// <param name="selText"></param>         /// <param name="strWhere">条件</param>         /// <returns></returns>         public DataSet GetDrop(string tbl,string selValue,string selText,string strWhere)         {             sql = "select {1},{2} from {0} where 1=1 and {3}";             ds = dbo.GetDataSet(string.Format(sql, tbl, selValue, selText, strWhere));             return ds;                 }                #endregion         #region 判断是否有数据         /// <summary>         /// 判断是否有数据:存在数据时返回true,否则返回Flash         /// </summary>         /// <param name="tbl">数据表名</param>         /// <param name="fld">字段名</param>         /// <param name="key">关键词</param>         /// <param name="IsKeyInt">是否是数字类型:是:true;否:false</param>         /// <returns>true或false</returns>         public bool IsHaveDate(string tbl,string fld,string key,bool IsKeyInt)         {             bool Rev = false;             if (IsKeyInt)             {                 sql = "select * from {0} where {1}={2}";             }             else             {                 sql = "select * from {0} where {1}='{2}'";             }             ds = dbo.GetDataSet(string.Format(sql, tbl, fld, key));             if (ds.Tables[0].Rows.Count > 0)             {                 Rev = true;             }             return Rev;         }         #endregion     } } /############################################ 版权声明: 文章内容为本站编辑,创作.你可以任意转载、发布、使用但请务必标明文章原始出处及本声明 http://www.opent.cn  作者:浪淘沙 ############################################/ /**********************************************************************************  *   * 功能说明:数据操作基类,可以执行内联SQL语句和存储过程  * 作者: 刘功勋;  * 版本:V0.1(C#2.0);时间:2006-4-28  *   * *******************************************************************************/ using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; namespace EC {     /// <summary>     /// 数据库连接及操作对象类     /// </summary>     public class DBBase     {         private bool _alreadyDispose = false;         private System.Data.SqlClient.SqlConnection conn;         private System.Data.SqlClient.SqlCommand com;         #region 构造与柝构         public DBBase()         {             try             {                 conn=new System.Data.SqlClient.SqlConnection(ConfigurationManager.AppSettings["ConnectionString"]);                 conn.Open();                 com = new System.Data.SqlClient.SqlCommand();                 com.Connection = conn;             }             catch (Exception ee)             {                 throw new Exception("连接数据库出错");             }         }         ~DBBase()         {             Dispose();         }         protected virtual void Dispose(bool isDisposing)         {             if (_alreadyDispose) return;             if (isDisposing)             {                 // TODO: 此处释放受控资源                  if (com != null)                 {                     com.Cancel();                     com.Dispose();                 }                 if (conn != null)                 {                     try                     {                         conn.Close();                         conn.Dispose();                     }                     catch (Exception ee)                     {                     }                     finally                     {                         conn = null;                     }                 }             }             // TODO: 此处释放非受控资源。设置被处理过标记              _alreadyDispose = true;         }         #endregion         #region IDisposable 成员         public void Dispose()         {             Dispose(true);             GC.SuppressFinalize(this);         }         #endregion         #region 数据基本操作         /// <summary>         /// ExecuteNonQuery         /// </summary>         /// <param name="sqlString">SQL语句</param>         /// <returns>返回影响行数</returns>         public int ExecuteNonQuery(string sqlString)         {             int ret = 0;             com.CommandText = sqlString;             com.CommandType = CommandType.Text;             try             {                 ret = com.ExecuteNonQuery();             }             catch (Exception ee)             {                 throw new Exception("SQL:" + sqlString + "<br />" + ee.Message.ToString());             }             finally             {                 com.Cancel();             }             return ret;         }         /// <summary>         /// 执行插入语句返回IDENTITY         /// </summary>         /// <param name="sqlString">SQL语句</param>         /// <returns>@@IDENTITY</returns>         public int ExecInsert(string sqlString)         {             int identity = 0;             //仅能执行Insert into 语句             if (!sqlString.ToLower().Contains("insert into"))             {                 return -1;             }             sqlString += " Select @@IDENTITY";             System.Data.DataSet ds = new DataSet();             try             {                 System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(sqlString, conn);                 da.Fill(ds);                 da.Dispose();             }             catch (Exception ee)             {                 throw new Exception("SQL:" + sqlString + "<br />" + ee.Message.ToString());             }             if (ds.Tables[0].Rows.Count > 0)             {                 identity =Convert.ToInt32(ds.Tables[0].Rows[0][0]);             }             ds.Clear();             ds.Dispose();             return identity;         }         /// <summary>         /// 执行SQL语句返回记录集         /// </summary>         /// <param name="sqlString">SQL语句</param>         /// <returns>DataSet</returns>         public DataSet GetDataSet(string sqlString)         {             System.Data.DataSet ds = new DataSet();             try             {                 System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(sqlString, conn);                 da.Fill(ds);                 da.Dispose();             }             catch (Exception ee)             {                 throw new Exception("SQL:" + sqlString + "<br />" + ee.Message.ToString());             }             return ds;         }         /// <summary>         /// 执行存储过程(返回N种参数)         /// </summary>         /// <param name="procName">过程名</param>         /// <param name="hashtable">传入的参数表</param>         /// <param name="hashtable1">传出的参数表</param>         /// <returns>返回参数表</returns>         public System.Collections.Hashtable ExecProcedure(string procName, System.Collections.Hashtable hashtable, System.Collections.Hashtable hashtable1)         {             System.Collections.Hashtable hashtable2 = new System.Collections.Hashtable();             System.Collections.IDictionaryEnumerator ide = hashtable.GetEnumerator();             System.Collections.IDictionaryEnumerator ide1 = hashtable1.GetEnumerator();             com.CommandType = CommandType.StoredProcedure;             com.CommandText = procName;             while (ide.MoveNext())             {                 System.Data.SqlClient.SqlParameter p = new System.Data.SqlClient.SqlParameter(ide.Key.ToString(), ide.Value);                 com.Parameters.Add(p);             }             while (ide1.MoveNext())             {                 System.Data.SqlClient.SqlParameter p = new System.Data.SqlClient.SqlParameter(ide1.Key.ToString(), ide.Value);                 com.Parameters.Add(p);             }             try             {                 com.ExecuteNonQuery();                 ide1 = hashtable1.GetEnumerator();                 while (ide1.MoveNext())                 {                     string k = ide1.Key.ToString();                     hashtable2.Add(k, com.Parameters[k].Value);                 }             }             catch (Exception ee)             {                 throw new Exception(ee.Message.ToString());             }             finally             {                 com.Cancel();             }             return hashtable2;         }
当前1/2页 [b]1[/b][url=http://www.1sucai.cn/article/15131_2.htm]2[/url][url=http://www.1sucai.cn/article/15131_2.htm]下一页[/url][url=http://www.1sucai.cn/article/15131_all.htm]阅读全文[/url]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部