我已将 Pay with Amazon 与我的 Web 应用程序集成,但我确定只有在我逐步完成代码调试时才能捕获资金,并且如果我没有断点则不会发生。对我来说,这表明暂停是必要的。我正在使用定期付款。代码的相关部分如下:
...
//make checkout object
AmazonAutomaticSimpleCheckout asc = new AmazonAutomaticSimpleCheckout(billingAgreeementId);
//capture
CaptureResponse cr = asc.Capture(authId, amount, 1);
//check if capture was successful
if (cr.CaptureResult.CaptureDetails.CaptureStatus.State == PaymentStatus.COMPLETED)
{
...
//give the user the things they paid for in the database
...
return "success";
}
...
因此,如果我在 下的捕获行有一个断点//capture
,则该函数返回成功。如果我没有断点,我会收到System.NullReferenceException: Object reference not set to an instance of an object.
关于以下if语句的运行时异常。
对我来说,这意味着我应该能够等待捕获方法。
另请注意,该capture(...)
方法正在调用该CaptureAction(...)
方法,就像 C# 示例一样。
//Invoke the Capture method
public CaptureResponse Capture(string authId, string captureAmount, int indicator)
{
return CaptureAction(propertiesCollection, service, authId, captureAmount, billingAgreementId, indicator, null, null);
}
我如何等待capture
电话?我是否忘记传递参数以指示它应该立即执行操作?