我正在尝试使用.net REST API SDK将我的购物车项目传递给paypal
以下是代码:
Dim b As Integer = 0
Dim pCartItem As New PayPal.Api.Payments.Item
Dim pCartItemList As New PayPal.Api.Payments.ItemList
Do While b <= cart.Count - 1
pCartItem.name = cart(b).Name
pCartItem.price = cart(b).Price
pCartItem.quantity = cart(b).Quantity
pCartItem.currency = "USD"
pCartItem.sku = cart(b).Sku
pCartItemList.items.Add(pCartItem) 'This line errors out
pCartItem = New PayPal.Api.Payments.Item
b += 1
Loop
orderTransaction.item_list = pCartItemList
出错的行pCartItemList.items.Add(pCartItem)会抛出错误“对象引用未设置为对象的实例。尝试使用关键字”new“:。我不明白为什么因为当我悬停时通过Visual Studio中的pCartItem,我可以看到从购物车中分配的所有正确值。
这是将Item对象添加到Transacation.item_list的正确方法吗?
非常感谢任何帮助。
谢谢,
托米
答案 0 :(得分:1)
我已经发现,可能遇到此问题的其他任何人的错误都是可行的代码
Dim pCartItem As PayPal.Api.Payments.Item = New PayPal.Api.Payments.Item
orderTransaction.item_list = New PayPal.Api.Payments.ItemList
orderTransaction.item_list.items = New List(Of PayPal.Api.Payments.Item)
Do While b <= cart.Count - 1
pCartItem.name = cart(b).Name
pCartItem.price = cart(b).Price
pCartItem.quantity = cart(b).Quantity
pCartItem.currency = "USD"
pCartItem.sku = cart(b).Sku
orderTransaction.item_list.items.Add(pCartItem)
pCartItem = New PayPal.Api.Payments.Item
b += 1
Loop