Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在ASP.Net中使用SOAP API向Paypal发送购物车项目_C#_Asp.net_Paypal - Fatal编程技术网

C# 在ASP.Net中使用SOAP API向Paypal发送购物车项目

C# 在ASP.Net中使用SOAP API向Paypal发送购物车项目,c#,asp.net,paypal,C#,Asp.net,Paypal,我在使用PayPal SOAP API时有点疯狂。实际流程运行良好,我的意思是我重定向到Paypal,流程重定向回来,我无法接受订单并处理它 我遇到的问题是,我似乎无法将购物车的内容发送到paypal页面,以概述他们正在支付的费用。我尝试使用PaymentDetails数组,这种方法对一个项目有效,但是多个项目(和多个paymentDetail对象)失败了,因为我认为我正在尝试从多个卖家那里获得付款,这是有道理的,但我没有 有没有人知道这是如何与.Net一起工作的,或者对我应该将这些项目放在哪里

我在使用PayPal SOAP API时有点疯狂。实际流程运行良好,我的意思是我重定向到Paypal,流程重定向回来,我无法接受订单并处理它

我遇到的问题是,我似乎无法将购物车的内容发送到paypal页面,以概述他们正在支付的费用。我尝试使用PaymentDetails数组,这种方法对一个项目有效,但是多个项目(和多个paymentDetail对象)失败了,因为我认为我正在尝试从多个卖家那里获得付款,这是有道理的,但我没有


有没有人知道这是如何与.Net一起工作的,或者对我应该将这些项目放在哪里有任何想法,我找到了一些关于定制espress签出过程的文档,但这是针对NVP API的,我似乎找不到与SOAP API相同的信息。

我在正确的区域中查找,焦点错误。PaymentDetails对象包含一个PaymentDetailsItem数组,需要整理代码,但是如果其他人需要它,应该给出大致的想法

    PaymentDetailsType[] pmtDetails = new PaymentDetailsType[1];
    pmtDetails[0] = new PaymentDetailsType();
    var pmtIndex = 0;

    PaymentDetailsItemType[] items = new PaymentDetailsItemType[cartItems.Count];

    foreach (var item in cartItems)
    {
        var i = new PaymentDetailsItemType()
        {
            Name = item.productName,
            Number = item.productID.ToString(),
            Quantity = item.quantity.ToString(),
            Amount = new BasicAmountType(){ currencyID = CurrencyCodeType.GBP, Value = item.productPrice.ToString() }
        };
        items[pmtIndex] = i;
        pmtIndex++;
    }
    //reqDetails.p
    //reqDetails.PaymentDetails = pmtDetails;
    //hOrderTotal.Value
    // 
    pmtDetails[0].PaymentDetailsItem = items;
    pmtDetails[0].OrderTotal = new BasicAmountType() { currencyID = CurrencyCodeType.GBP, Value = HttpContext.Current.Session["_OrderTotalLessShippingAmount"].ToString() };
    reqDetails.PaymentDetails = pmtDetails;

当您收到paypal的收据时,您是否也体验过数量=1?我也在PaymentDetailsItem中指定了数量。