|
public class ShoppingCart{ Hashtable Cart_Orders=new Hashtable(); public ICollection Orders{ get{return Cart_Orders.Values;} } public decimal TotalCost{ //计算总价格 get{ decimal total=0; foreach(DictionaryEntry entry in Cart_Orders){ Stat_Class order=(Stat_Class)entry.Value; total+=(order.Price*order.Quantity); } return total; } } public void AddItem(Stat_Class Order){ //添加物件方法 Stat_Class order=( Stat_Class)Cart_Orders[Order.ItemID]; if(order!=null) order.Quantity+=Order.Quantity; else Cart_Orders.Add(Order.ItemID,Order); } public void DeleteItem (String ItemID){ //删除物件 if(Cart_Orders[ItemID]!=null) Cart_Orders.Remove(ItemID); } } } 编译ShoppingCart.cs文件: csc /t:library /out: ShoppingCart.dll ShoppingCart.cs 部署ShoppingCart.dll组件到bin目录下。 说明: 为了保证不管使用什么样的会话模式都能够有效的保存会话状态,在定义类的前面加上了Serializable序列化。另外,为了使每个用户登录时都能创建一个类的实例,在Global.asax文件里加上: <%@ Import Namespace="WendwCart" %> <%@ Application Codebehind="Global.asax.cs" Inherits="HDLab.BBS.Global" %> <script Language="C#" runat="server"> void Session_Start() { Session["MyShoppingCart"]=new ShoppingCart(); } </script> 其中WendwCart是控件的命名空间名称。 在下一篇《购物推车程序开发——调用购物车类》中将讲解如何在ASP.NET页面中应用ShoppingCart.dll组件来添加、删除物件。 上一页 [1] [2] [3] 下一页 [C语言系列]NET 中C#的switch语句的语法 [系统软件]托拽Explore中的文件到VB.net的窗口 [系统软件]Boost库在XP+Visual C++.net中的安装 [常用软件]新配色面板:Paint.Net3.0RC1官方下载 [常用软件]用内建的“Net Meeting”聊天 [VB.NET程序]Henry的VB.NET之旅(三)—共享成员 [VB.NET程序]Henry的VB.NET之旅(二)—构造与析构 [VB.NET程序]Henry的VB.NET之旅(一)—失踪的窗体 [VB.NET程序]在托盘上显示Balloon Tooltip(VB.NET) [VB.NET程序]Henry手记-VB.NET中动态加载Treeview节点(二)
|