文章 | 入侵攻击 | 安全防御 | 操作系统 | 网站建设 | 网络编程 | 路由交换 | 灾难恢复 | 新闻资讯 | 安全公告
下载 | 漏洞扫描 | 加密破解 | 入侵攻击 | 后门木马 | 溢出程序 | 综合工具 | 安全防护 | 原创发布 | 动画教程
论坛 | 黑客军火 | 配服务器 | 黑客情感 | 免费资源 | 美女贴图 | 灌水无罪 | 在线服务 | 会员照片 | 网站首页
 当前位置:主页 >> 技术文摘 >> 网络编程 >> NET编程 >> 文章内容  
 

 
在asp.net中利用session做购物车-DataTable篇

www.hx99.org 阅读: 时间:2007-07-12 整理:华西黑盟
------------------------------------------------------------------
 在asp.net中利用session做购物车-DataTable篇
原创:小菜一碟

构想:在session里定义一个datatable,用作购物车。
A.aspx传送一个商品ID给B.aspx,B.aspx显示购物车的相关资料。

我觉得用datatable做购物车思路比较简单,当然还有用arraylist,如petshop,
大家又喜欢那种呢?是否还有更好的方式呢?
欢迎大家讨论!

B.aspx代码如下,已通过测试,可以运行。

<%@PageLanguage="C#"%>
<%@importNamespace="System.Data"%>
<%@importNamespace="System.Data.OleDb"%>
<scriptrunat="server">

DataTableCart=newDataTable();
DataRowdr;


privatevoidPage_Load(ObjectSrc,EventArgsE)
{
stringls_pid;


//在seesion中是否已经购物车,如果没有就建立
if(Session["ShopingCart"]==null)
{

Cart.Columns.Add(newDataColumn("Pid",typeof(string)));
Cart.Columns.Add(newDataColumn("pname",typeof(string)));
Cart.Columns.Add(newDataColumn("qty",typeof(string)));
Cart.Columns.Add(newDataColumn("pprice",typeof(string)));

Session["ShoppingCart"]=Cart;

}
else
{

Cart=(DataTable)Session["ShoppingCart"];
}



//是否有货品ID传过来,有就添加然后显示购物车,没有就直接显示购物车
if(Request.QueryString["pid"]!=null)
{
ls_pid=Request.QueryString["pid"];
additem(ls_pid);
}


showitem();





}


privatevoidadditem(stringitemid)
{

stringls_sql="selectProductId,PName,PPricefromProductwherePstatus='Y' andProductId='"+itemid+"'";
stringcnn=ConfigurationSettings.AppSettings["oledb"];

OleDbConnectionmyConnection=newOleDbConnection(cnn);
OleDbCommandmyCommand=newOleDbCommand(ls_sql,myConnection);
myConnection.Open();
OleDbDataReaderitemdr=myCommand.ExecuteReader();

if(itemdr.Read())
{
dr=Cart.NewRow();
dr=Cart.NewRow();
dr[0]=itemdr["ProductId"];
dr[1]=itemdr["PName"];
dr[2]="1";
dr[3]=itemdr["PPrice"];
Cart.Rows.Add(dr);
}



}

privatevoidshowitem()
{
DataList1.RepeatDirection=RepeatDirection.Horizontal;
DataList1.RepeatLayout=RepeatLayout.Table;
DataList1.RepeatColumns=1;

DataList1.DataSource=Cart;
DataList1.DataBind();
}

</script>
<html>
<head>
</head>
<body>
<formrunat="server">
<asp:DataListid="DataList1"runat="server"BorderStyle="None"GridLines="Both"BorderWidth="1px"BorderColor="#CC9966"BackColor="White"CellPadding="4">
<ItemStyleforecolor="#330099"backcolor="White"></ItemStyle>
<FooterStyleforecolor="#330099"backcolor="#FFFFCC"></FooterStyle>
<HeaderStylefont-bold="True"forecolor="#FFFFCC"backcolor="#990000"></HeaderStyle>
<SelectedItemStylefont-bold="True"forecolor="#663399"backcolor="#FFCC66"></SelectedItemStyle>
<ItemTemplate>
<tablewidth="500">
<tbody>
<tr>
<td>
<%#DataBinder.Eval(Container.DataItem,"pid")%></td>
<td>
<%#DataBinder.Eval(Container.DataItem,"pname")%></td>
<td>
<%#DataBinder.Eval(Container.DataItem,"qty")%></td>
<td>
<%#DataBinder.Eval(Container.DataItem,"pprice")%></td>
</tr>
</tbody>
</table>
</ItemTemplate>
</asp:DataList>
</form>
</body>
</html>

   -------------------------------------------------------------------------------------------
  上一篇:在ASP.NET页面中实现数据棒图
  下一篇:从sqlserver中读取图片
   -------------------------------------------------------------------------------------------
用户名:
Email:
评论内容:
 
  精品推荐
推荐:ASPX一句话木马--终
利用ASP.Net 动态生成HTML
asp.net实现验证码
在asp.net中利用session做
Asp.net 中在客户端触发服
Asp.net 中服务端控件事件
ASP.NET上传图片并生成可
ASP.NET AJAX解决网页打开
实现IE浏览器部分菜单命令
Asp.net一夜速成教程
从sqlserver中读取图片
ASP.NET页面间的传值的几
用动态属性和DataView实现
用PagedDataSource类实现D
关于TreeView控件专题
asp.net上传图片并同时生
ASP.NET中水晶报表的使用
ASP.NET 中 Cookie 的基本
ADO.NET使用经验集
Forms身份验证
ASP.NET四种页面导航方式
ASP.NET中如何防范SQL注入
[分享]ASP.NET学习手记```
ASP.NET编程中的十大技巧
用ASP.NET上传图片并生成
关于我们 | 发展历程 | 在线投稿 | 核心监督 | 友情链接 | 网站地图 | 网站留言 | 联系我们
Copyright © 2004-2007 Www.Hx99.Net
版本:华西黑盟网站系统V5.0 Email:root#hx99.org
中国·西安·宝鸡 请使用IE6.0版本, 分辩率1024×768进行浏览
版权所有 任意抄袭 注意完整
陕ICP备06000444号