using System;using System.Data;using System.Drawing;using System.Web;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;using System.Data.SqlClient;namespace ASPNETSZ4...{ /**//// <summary> /// Pub 的摘要说明。 /// </summary> public class Pub ...{ // 数据库公用变量 public SqlConnection SqlConnection1; public SqlCommand SqlCommand1; public SqlDataAdapter SqlDataAdapter1; public SqlDataAdapter SqlDataAdapter2; public SqlDataReader SqlDataReader1; public SqlCommandBuilder SqlCommandBuilder1; public DataSet DataSet1; public DataTable DataTable1; public DataRow DataRow1; // 非数据库公用变量 public string LoginName; // 登录用户 public string SiteName = System.Configuration.ConfigurationSettings.AppSettings["SiteName"]; // 站点名称 public string SiteNav; // 站点导航 public string sTitle = System.Configuration.ConfigurationSettings.AppSettings["SiteName"]; // 站点标题 // 页面导航 public int PageSize = 5; // 每页显示记录数 public int RecordCount, PageCount, CurrentPage; public Pub() ...{ // // TODO: 在此处添加构造函数逻辑 // } // 0.——————————————————通用操作—————————————————————— public void NavInfo(string sMsg, string sMsgURL, string sMsgTarget) ...{ sTitle = sTitle + " -- " + sMsg; SiteNav = "<a href=./>" + SiteName +"</a>"; } // 1.——————————————————数据库操作—————————————————————— /**//// <summary> /// 连接打开 /// </summary> public void ConnOpen() ...{ SqlConnection1 = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["Conn"]); SqlConnection1.Open(); } /**//// <summary> /// 连接关闭(之前清除DateSet1中的数据) /// </summary> public void ConnClose() ...{ if (DataSet1 != null) ...{ DataSet1.Clear(); } if (SqlConnection1 != null) ...{ SqlConnection1.Close(); } } /**//// <summary> /// 建立DataSet对象,用记录填充或构架(如果必要)DataSet对象,DataSet即是数据在内存的缓存 /// </summary> /// <param name="sSQL">打开表Sql语句</param> public void Fill(string sSQL) ...{ ConnOpen(); SqlDataAdapter1 = new SqlDataAdapter(sSQL, SqlConnection1); DataSet1 = new DataSet(); SqlDataAdapter1.Fill(DataSet1); } /**//// <summary> /// 引用存储过程构造DataSet /// </summary> /// <param name="sp">要引用的存储过程</param> public void FillDataSet(string sp) ...{ ConnOpen(); SqlDataAdapter1 = new SqlDataAdapter(sp, SqlConnection1); DataSet1 = new DataSet(); SqlDataAdapter1.Fill(DataSet1); } /**//// <summary> /// 建立DataSet对象,用记录填充或构架(如果必要)DataSet对象,DataSet即是数据在内存的缓存 /// </summary> /// <param name="TableName">用于表映谢的源表的名称</param> /// <param name="sql">打开表Sql语句</param> public void Fill(string TableName,string sql) ...{ ConnOpen(); SqlDataAdapter1 = new SqlDataAdapter(sql, SqlConnection1); DataSet1 = new DataSet(); SqlDataAdapter1.Fill(DataSet1, TableName); } /**//// <summary> /// 给DataSet对象增加映谢表 /// </summary> /// <param name="sSQL">SQL语句</param> public void FillAdd(string sSQL) ...{ SqlDataAdapter1 = new SqlDataAdapter(sSQL, SqlConnection1); SqlDataAdapter1.Fill(DataSet1); } /**//// <summary> /// 给DataSet对象增加映谢表 /// </summary> /// <param name="sSQL">SQL语句</param> public void FillAdd(string TableName, string sSQL) ...{ SqlDataAdapter1 = new SqlDataAdapter(sSQL, SqlConnection1); SqlDataAdapter1.Fill(DataSet1, TableName); } /**//// <summary> /// 获取最大值 /// </summary> /// <param name="fID"></param> /// <param name="TableName"></param> /// <returns></returns> public string GetMaxId(string fID, string TableName) ...{ string sKey; string sSQL="SELECT TOP 1 " + fID + " FROM " + TableName + " ORDER BY " + fID + " DESC"; if (GetRowCount(sSQL) == 0) ...{ sKey="1"; } else ...{ GetRowRecord(sSQL); sKey = (int.Parse(DataRow1[fID].ToString()) + 1).ToString(); // 获得数据库表key值 } return sKey; } /**//// <summary> /// 获得包含在DataSet对象的映谢表集合中的index为0的映谢表 /// </summary> /// <param name="sSQL">SQL语句</param> public void GetTable(string sSQL) ...{ Fill(sSQL); DataTable1 = DataSet1.Tables[0]; } /**//// <summary> /// 获得符合该Sql语句的表记录数 /// </summary> /// <param name="sSQL">SQL语句</param> /// <returns>返回表记录条数</returns> public int GetRowCount(string sSQL) ...{ Fill(sSQL); try ...{ int Count = DataSet1.Tables[0].Rows.Count; ConnClose(); return Count; } catch ...{ ConnClose(); return 0; } } /**//// <summary> /// 通过传Sql语句关键key值获得表中一行的数据 /// </summary> /// <param name="sSQL">带关键Key值参数的SQL语句</param> public void GetRowRecord(string sSQL) ...{ Fill(sSQL); DataRow1 = DataSet1.Tables[0].Rows[0]; ConnClose(); } /**//// <summary> /// 执行Transact-SQL语句,对数据库记录做插入,修改,删除等操作 /// </summary> /// <param name="sSQL">Transact-SQL语句</param> public void ExeSql(string sSQL) ...{ ConnOpen(); SqlCommand1 = new SqlCommand(sSQL, SqlConnection1); SqlCommand1.ExecuteNonQuery(); SqlCommand1.Dispose(); } // 2.——————————————————绑定控件—————————————————————— /**//// <summary> /// 绑定DataGrid控件并显示数据 /// </summary> /// <param name="sSQL">Sql语句</param> /// <param name="DataGrid1">DataGrid控件id值</param> public void BindDataGrid(string sSQL, DataGrid DataGrid1) ...{ Fill(sSQL); DataGrid1.DataSource = DataSet1.Tables[0].DefaultView; DataGrid1.DataBind(); } /**//// <summary> /// 绑定DataList控件并显示数据 /// </summary> /// <param name="sSQL">Sql语句</param> /// <param name="DataList1">DataList控件ID值</param> public void BindDataList(string sSQL, DataList DataList1) ...{ Fill(sSQL); DataList1.DataSource = DataSet1.Tables[0].DefaultView; DataList1.DataBind(); } /**//// <summary> /// 绑定Repeater控件并显示数 /// </summary> /// <param name="sSQL">Sql语句</param> /// <param name="Repeater1">Repeater控件ID值</param> public void BindRepeater(string sSQL,Repeater Repeater1) ...{ Fill(sSQL); Repeater1.DataSource = DataSet1.Tables[0].DefaultView; Repeater1.DataBind(); } // 3.——————————————————操作业务—————————————————————— /**//// <summary> /// 返回当前用户的购物车ID /// </summary> /// <returns>返回当前用户的购物车ID</returns> public String GetShoppingCartID() ...{ //当前 HTTP 请求获取 HttpContext 对象。 System.Web.HttpContext Context = System.Web.HttpContext.Current; //user Id 的分配有二种情况 //1. 如果该用户已经通过验证后登录了系统, 那么以该用户的 CustomerId作为购物车ID if (Context.User.Identity.Name != "") ...{ return Context.User.Identity.Name; } //2. 否则, 如果浏览器Cookie中已经分配给该用户一个购物车ID //(1)cookies return shoppingCartId (2)set tempCartId of Guid and return this values if (Context.Request.Cookies["ShoppingCartID"] != null) ...{ return Context.Request.Cookies["ShoppingCartID"].Value; } else ...{ // 利用System.Guid Class产生一个随机GUID(全球唯一标识号) Guid TempCartId = Guid.NewGuid(); // 回写到客户端指定的cookie中 Context.Response.Cookies["ShoppingCartID"].Value = TempCartId.ToString(); // 同时返回 TempCartId return TempCartId.ToString(); } } /**//// <summary> /// 显示记录列表.最新消息 /// </summary> /// <returns></returns> public SqlDataReader spNewsList() ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spNewsList", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlDataReader result = SqlCommand1.ExecuteReader(CommandBehavior.CloseConnection); return result; } /**//// <summary> /// 用户登录 /// </summary> /// <param name="sEmail">登录时的电子邮件</param> /// <param name="sPassword">相应的密码</param> /// <returns></returns> public String spCustomersLogin(string sEmail, string sPassword) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spCustomersLogin", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@Email", SqlDbType.VarChar, 100); SqlParameter Param2 = new SqlParameter("@Password", SqlDbType.VarChar, 50); SqlParameter Param3 = new SqlParameter("@ID", SqlDbType.Int, 4); SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); SqlCommand1.Parameters.Add(Param3); Param1.Value = sEmail; Param2.Value = sPassword; //不经常用要注意 Param3.Direction = ParameterDirection.Output; SqlCommand1.ExecuteNonQuery(); //对于@ID的处理 int ID = (int)(Param3.Value); if (ID == 0) return null; else return ID.ToString(); } /**//// <summary> /// 更新密码 /// </summary> /// <param name="sEmail">登录时的电子邮件</param> /// <param name="sPassword">相应的密码</param> /// <param name="sPasswordNew">新的密码</param> /// <returns></returns> public String spCustomersUpdatePassword(string sEmail, string sPassword, string sPasswordNew) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spCustomersUpdatePassword", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; //set parameters SqlParameter Param1 = new SqlParameter("@Email", SqlDbType.VarChar, 100); SqlParameter Param2 = new SqlParameter("@PasswordOld", SqlDbType.VarChar, 50); SqlParameter Param3 = new SqlParameter("@PasswordNew", SqlDbType.VarChar, 50); SqlParameter Param4 = new SqlParameter("@Result", SqlDbType.VarChar, 100); Param1.Value = sEmail; Param2.Value = sPassword; Param3.Value = sPasswordNew; SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); SqlCommand1.Parameters.Add(Param3); SqlCommand1.Parameters.Add(Param4); Param4.Direction = ParameterDirection.Output; SqlCommand1.ExecuteNonQuery(); return Param4.Value.ToString(); } /**//// <summary> /// 获取商品列表 /// </summary> /// <param name="sStr">查询字段值, 如货号或者品名等/按商品分类值</param> /// <param name="T">true/false: 按指定查询字段值/按商品分类</param> /// <returns></returns> public SqlDataReader spProductsSearch(string sStr, bool T) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spProductsSearch", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Para1 = new SqlParameter("@Search", SqlDbType.VarChar, 255); SqlParameter Para2 = new SqlParameter("@SearchType", SqlDbType.Bit, 1); SqlCommand1.Parameters.Add(Para1); SqlCommand1.Parameters.Add(Para2); Para1.Value = sStr; Para2.Value = T; SqlDataReader result = SqlCommand1.ExecuteReader(CommandBehavior.CloseConnection); return result; } /**//// <summary> /// 返回最TOP的几个商品列表 /// </summary> /// <param name="sTop">限定记录条数</param> /// <param name="sORDERBY">指定排列字段</param> /// <param name="sCategoryID">附加有指定商品类别</param> /// <returns>返回最TOP的几个商品列表</returns> public SqlDataReader spProductsTop(string Top, string OrderBy, string CategoryID) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spProductsTop", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Para1 = new SqlParameter("@Top", SqlDbType.VarChar, 25); SqlParameter Para2 = new SqlParameter("@OrderBy", SqlDbType.VarChar, 50); SqlParameter Para3 = new SqlParameter("@CategoryID", SqlDbType.VarChar, 25); SqlCommand1.Parameters.Add(Para1); SqlCommand1.Parameters.Add(Para2); SqlCommand1.Parameters.Add(Para3); Para1.Value = Top; Para2.Value = OrderBy; Para3.Value = CategoryID; SqlDataReader result = SqlCommand1.ExecuteReader(CommandBehavior.CloseConnection); return result; } /**//// <summary> /// SqlDataAdapter方式的存储过程.列表.商品.所有.指定OrderBy /// </summary> /// <param name="OrderBy">指定OrderBy</param> public void spProductsAllOrderBy(string OrderBy) ...{ ConnOpen(); SqlDataAdapter1 = new SqlDataAdapter("spProductsTop", SqlConnection1); SqlDataAdapter1.SelectCommand.CommandType = CommandType.StoredProcedure; SqlParameter Para1 = new SqlParameter("@Top", SqlDbType.VarChar, 25); SqlParameter Para2 = new SqlParameter("@OrderBy", SqlDbType.VarChar, 50); SqlParameter Para3 = new SqlParameter("@CategoryID", SqlDbType.VarChar, 25); SqlDataAdapter1.SelectCommand.Parameters.Add(Para1); SqlDataAdapter1.SelectCommand.Parameters.Add(Para2); SqlDataAdapter1.SelectCommand.Parameters.Add(Para3); Para1.Value = "100 PERCENT"; Para2.Value = OrderBy; Para3.Value = "-100"; DataSet1 = new DataSet(); SqlDataAdapter1.Fill(DataSet1); } /**//// <summary> /// /// </summary> /// <param name="Name">用户名</param> /// <param name="Password1">密码</param> /// <param name="Email">邮件</param> /// <param name="phone">手机</param> /// <param name="Oicq">QQ</param> /// <param name="Code">邮政编码</param> /// public void spCustomersRegister(string Name, string Password, string Email, string phone, string Oicq, string Code) ...{ ConnOpen(); SqlDataAdapter1 = new SqlDataAdapter("spCustomersRegister", SqlConnection1); SqlDataAdapter1.SelectCommand.CommandType = CommandType.StoredProcedure; SqlParameter para1 = new SqlParameter("@Name", SqlDbType.NVarChar, 50); para1.Value = Name; SqlDataAdapter1.SelectCommand.Parameters.Add(para1); SqlParameter para2 = new SqlParameter("@password", SqlDbType.NVarChar, 50); para2.Value = Password; SqlDataAdapter1.SelectCommand.Parameters.Add(para2); SqlParameter para3 = new SqlParameter("@Email", SqlDbType.NVarChar, 50); para3.Value = Email; SqlDataAdapter1.SelectCommand.Parameters.Add(para3); SqlParameter para4 = new SqlParameter("@phone", SqlDbType.NVarChar, 50); para4.Value = phone; SqlDataAdapter1.SelectCommand.Parameters.Add(para4); SqlParameter para5 = new SqlParameter("@oicq", SqlDbType.NVarChar, 50); para5.Value = Oicq; SqlDataAdapter1.SelectCommand.Parameters.Add(para5); SqlParameter para6 = new SqlParameter("@Code", SqlDbType.NVarChar, 50); para6.Value = Code; SqlDataAdapter1.SelectCommand.Parameters.Add(para6); DataSet1 = new DataSet(); SqlDataAdapter1.Fill(DataSet1); } /**//// <summary> /// 返回最TOP的几个链接列表 /// </summary> /// <param name="sTop">限定记录条数</param> /// <param name="sORDERBY">指定排列字段</param> /// <returns>返回最TOP的几个链接列表</returns> public SqlDataReader spCustomersTop(string sTop, string sORDERBY) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spCustomersTop", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Para1 = new SqlParameter("@Top", SqlDbType.VarChar, 25); SqlParameter Para2 = new SqlParameter("@ORDERBY", SqlDbType.VarChar, 50); SqlCommand1.Parameters.Add(Para1); SqlCommand1.Parameters.Add(Para2); Para1.Value = sTop; Para2.Value = sORDERBY; SqlDataReader result = SqlCommand1.ExecuteReader(CommandBehavior.CloseConnection); return result; } /**//// <summary> /// 获取指定商品ID的明细 /// </summary> /// <param name="ProductID">要查看的商品ID</param> /// <returns>返回明细</returns> public SqlDataReader spProductDetail(int ProductID) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spProductDetail", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Para1 = new SqlParameter("@ProductID", SqlDbType.Int, 4); SqlCommand1.Parameters.Add(Para1); Para1.Value = ProductID; SqlDataReader result = SqlCommand1.ExecuteReader(CommandBehavior.CloseConnection); return result; } /**//// <summary> /// 获取商品列表.按指定字段类型 /// </summary> /// <param name="sFieldName">字段类型</param> /// <returns></returns> public SqlDataReader GetProductsOrderBy(string sFieldName) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("GetProductsOrderBy", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@FieldName", SqlDbType.VarChar, 255); SqlCommand1.Parameters.Add(Param1); Param1.Value = sFieldName; SqlDataReader result = SqlCommand1.ExecuteReader(CommandBehavior.CloseConnection); return result; } /**//// <summary> /// 显示指定购物车ID的记录 /// ///web----dataColumn----SqldataReader /// </summary> /// <param name="sCartID">购物车ID</param> /// <returns></returns> public SqlDataReader spShoppingCartList(string sCartID) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spShoppingCartList", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@CartID", SqlDbType.VarChar, 50); SqlCommand1.Parameters.Add(Param1); Param1.Value = sCartID; SqlDataReader result = SqlCommand1.ExecuteReader(CommandBehavior.CloseConnection); return result; } /**//// <summary> /// 获取指定购物车ID的总金额 /// </summary> /// <param name="sCartID">购物车ID</param> /// <returns>总金额</returns> public decimal spShoppingCartTotal(string sCartID) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spShoppingCartTotal", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@CartID", SqlDbType.VarChar, 50); SqlParameter Param2 = new SqlParameter("@TotalCost", SqlDbType.Money, 8); SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); Param1.Value = sCartID; Param2.Direction = ParameterDirection.Output; SqlCommand1.ExecuteNonQuery(); //必须对PARA2进行判断说明 if (Param2.Value.ToString() != "") ...{ return (decimal)Param2.Value; } else ...{ return 0; } } /**//// <summary> /// 把当前商品加入指定的购物车里 /// </summary> /// <param name="sCartID">购物车ID</param> /// <param name="iProductID">商品ID</param> /// <param name="iQuantity">商品数量</param> public void spShoppingCartAddItem(string sCartID, int iProductID, int iQuantity) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spShoppingCartAddItem", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@ProductID", SqlDbType.Int, 4); SqlParameter Param2 = new SqlParameter("@CartID", SqlDbType.VarChar, 50); SqlParameter Param3 = new SqlParameter("@Quantity", SqlDbType.Int, 4); SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); SqlCommand1.Parameters.Add(Param3); Param1.Value = iProductID; Param2.Value = sCartID; Param3.Value = iQuantity; SqlCommand1.ExecuteNonQuery(); } /**//// <summary> /// 购物车.更新数量 /// </summary> /// <param name="sCartID">指定购物车ID</param> /// <param name="iProductID">指定商品ID</param> /// <param name="iQuantity">要更新的数量</param> public void spShoppingCartUpdateQty(string sCartID, int iProductID, int iQuantity) ...{ if (iQuantity < 0) ...{ throw new Exception("系统提示: 数量不能小于 0, 请检查各项输入是否一些正确"); } ConnOpen(); SqlCommand1 = new SqlCommand("pShoppingCartUpdateQty", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@CartID", SqlDbType.VarChar, 50); SqlParameter Param2 = new SqlParameter("@ProductID", SqlDbType.Int, 4); SqlParameter Param3 = new SqlParameter("@Quantity", SqlDbType.Int, 4); SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); SqlCommand1.Parameters.Add(Param3); Param2.Value = iProductID; Param1.Value = sCartID; Param3.Value = iQuantity; SqlCommand1.ExecuteNonQuery(); } /**//// <summary> /// 购物车.删除所选项 /// </summary> /// <param name="sCartID">指定购物车ID</param> /// <param name="iProductID">指定商品ID</param> public void spShoppingCartRemoveItem(string sCartID, int iProductID) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spShoppingCartRemoveItem", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@CartID", SqlDbType.VarChar, 50); SqlParameter Param2 = new SqlParameter("@ProductID", SqlDbType.Int, 4); SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); Param1.Value = sCartID; Param2.Value = iProductID; SqlCommand1.ExecuteNonQuery(); } /**//// <summary> /// 将购物车确认为订单 /// </summary> /// <param name="iCustomerID">指定客户ID</param> /// <param name="sCartID">指定购物车ID</param> /// <param name="sMemo">加入备注说明</param> /// <returns>返回所生成的订单ID给客户</returns> public int spOrdersInsert(int iCustomerID, string sCartID, string sMemo) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spOrdersInsert", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@CartID", SqlDbType.VarChar, 50); SqlParameter Param2 = new SqlParameter("@CustomerID", SqlDbType.Int, 4); SqlParameter Param3 = new SqlParameter("@Memo", SqlDbType.VarChar, 2000); SqlParameter Param4 = new SqlParameter("@OrderID", SqlDbType.Int, 4); SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); SqlCommand1.Parameters.Add(Param3); SqlCommand1.Parameters.Add(Param4); Param1.Value = sCartID; Param2.Value = iCustomerID; Param3.Value = sMemo; //注意 Param4.Direction = ParameterDirection.Output; SqlCommand1.ExecuteNonQuery(); return (int)Param4.Value; } /**//// <summary> /// 作用: 从一个购物车中转到另一个购物车中 /// 情形: 应用于在登录或者注册过程完成后, 将临时购物车转到该用户的购物车中. /// </summary> /// <param name="sOldCartId">原来的购物车ID</param> /// <param name="sNewCartId">现在的购物车ID</param> public void spShoppingCartMigrate(String sOldCartId, String sNewCartId) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spShoppingCartMigrate", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@OldCartId ", SqlDbType.VarChar, 50); SqlParameter Param2 = new SqlParameter("@NewCartId ", SqlDbType.VarChar, 50); SqlCommand1.Parameters.Add(Param1); SqlCommand1.Parameters.Add(Param2); Param1.Value = sOldCartId; Param2.Value = sNewCartId; SqlCommand1.ExecuteNonQuery(); } /**//// <summary> /// 清空购物车 /// </summary> /// <param name="sCartID"></param> public void EmptyCart(string sCartID) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("ShoppingCartEmpty", SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter Param1 = new SqlParameter("@CartID", SqlDbType.VarChar, 50); SqlCommand1.Parameters.Add(Param1); Param1.Value = sCartID; SqlCommand1.ExecuteNonQuery(); } // 4.-----------------------其他实用过程/函数--------------------------- /**//// <summary> /// 检查今天昨天前天及以前的天 /// </summary> /// <param name="dt">要检查的表</param> /// <returns>返回检查结果</returns> /// <example><%# CheckDate((DateTime)DataBinder.Eval(Container.DataItem,"DateTimes").ToString(yyyyMMdd)) %></example> public string CheckDate(DateTime dt) ...{ string sStr; DateTime Today; Today = DateTime.Today; if( dt.Date == Today ) sStr = "今天"; else if( dt.AddDays(1).Date == Today ) sStr = "昨天"; else if( dt.AddDays(2).Date == Today ) sStr = "前天"; else sStr = dt.Year.ToString() + "年" + dt.Month.ToString() + "月" + dt.Day.ToString() + "日"; sStr += " " + dt.Hour.ToString() + ":" + dt.Minute.ToString(); return sStr; } /**//// <summary> /// 截取指定长度的子字符串 /// </summary> /// <param name="sStr">需要截取的字符串</param> /// <param name="Len">目标长度</param> /// <returns>返回截取后的字符串</returns> /// <example><%# GetSubString(DataBinder.Eval(Container.DataItem,"Memo").ToString()) %></example> public string GetSubString(string sStr, int Len) ...{ if (sStr.Length > Len) ...{ return sStr.Substring(0, Len) + "..."; } else ...{ return sStr; } } //-------------------------------------------操作业务层2------------------------------------------ //------------------------------------------------------------------------------------------------ public void DGDeleteCommand(int ProductId) ...{ ConnOpen(); SqlCommand1 = new SqlCommand("spDeleteCommand",SqlConnection1); SqlCommand1.CommandType = CommandType.StoredProcedure; SqlParameter para = new SqlParameter("@ProductId",SqlDbType.Int); para.Value = ProductId; SqlCommand1.Parameters.Add(para); SqlCommand1.ExecuteNonQuery(); } /**//// <summary> /// /// </summary> /// <param name="ModelNumber">规格型号</param> /// <param name="ModelName">productName</param> /// <param name="UnitCount">单价</param> public void DGUpdateCommand(string ModelNumber,string ModelName,string UnitCost) ...{ ConnOpen(); SqlDataAdapter1 = new SqlDataAdapter("spDGUpdateCommand",SqlConnection1);//create database connection SqlDataAdapter1.SelectCommand.CommandType = CommandType.StoredProcedure;//execute procedure SqlParameter modelNumber = new SqlParameter("@ModelNumber",SqlDbType.NVarChar,25); modelNumber.Value = ModelNumber; SqlDataAdapter1.SelectCommand.Parameters.Add(modelNumber);//add prarmeters to command's SqlParameter para2 = new SqlParameter("@ModelName",SqlDbType.NVarChar,25); para2.Value = ModelName; SqlDataAdapter1.SelectCommand.Parameters.Add(para2); SqlParameter para3 = new SqlParameter("@UnitCost",SqlDbType.NVarChar,25); para3.Value = UnitCost; SqlDataAdapter1.SelectCommand.Parameters.Add(para3); DataSet1 = new DataSet(); SqlDataAdapter1.Fill(DataSet1); } }}