Update操作实际上只是Price的重新计算前面提及Quantity是在更新购物车详情时实际改变的惟一一项(如果考虑到它这可使总价有意义因为没有顾客更新价格或者以任何方式更新产品名或描述)数量影响价格
Public Sub Update(ByVal RowID As Integer ByVal ProductID As Integer ByVal Quantity As Integer ByVal Price As Double)
Dim Item As CartItem = _items(RowID)
ItemProductID = ProductID
ItemQuantity = Quantity
ItemPrice = Price
_lastUpdate = DateTimeNow()
End Sub
再次使用索引标识商品并且从CartItem集合中读取ProductID Quantity和Price并且设置它为所选产品的新Quantity也更新购物车被更新的时间
已经查看了Update和Insert方法从而只剩下顾客如何从购物车中移除商品的问题通过Delete方法实现这一点Delete方法是种方法中最简单的方法需要做的只有使用索引标识哪些商品需要删除并且使用RemoveAt方法移除它也设置_lastUpdate变量以包含当前时间因为已经通过从中删除商品更新了购物车
Public Sub DeleteItem(ByVal rowID As Integer)
_itemsRemoveAt(rowID)
_lastUpdate = DateTimeNow()
End Sub
在InsertUpdate和DeleteItem方法的下面是index特性index特性如下
Private Function ItemIndexOfID(ByVal ProductID As Integer) As Integer
Dim index As Integer
For Each item As CartItem In _items
If itemProductID = ProductID Then
Return index
End If
index +=
Next
Return
End Function
[] [] [] [] [] [] [] [] []