我正在我的应用程序接口中使用条带连接,我想要更新现有的paymentIntent。API的官方库提供了这些方法。
public PaymentIntent Get(string paymentIntentId,
PaymentIntentGetOptions options = null, RequestOptions requestOptions = null)
public PaymentIntent Update(string paymentIntentId,
PaymentIntentUpdateOptions options, RequestOptions requestOptions = null);
我想要更新资源的唯一一件事就是目的地,所以我在意识到没有简单的方法之前就开始更新了:
var paymentIntentService = new PaymentIntentService();
var paymentIntent = paymentIntentService.Get(transaction.ExternalTransactionId);
if (null != destinationStripeAccount)
{
paymentIntent.TransferData.DestinationId = destinationStripeAccount.AccountId;
}
//This takes in a PaymentIntentUpdateOptions instead of a paymentIntent WTF
paymentIntentService.Update(paymentIntent.Id, new PaymentIntentUpdateOptions { });
PaymentIntent不是PaymentIntentUpdate选项,因此我需要将所有值映射到另一个值。我希望不需要安装额外的依赖项,比如AutoMapper,手动映射字段将是一件麻烦的事情。
有没有人知道有没有一种只更新目的地的方法,或者一种更新付款意向的简单方法?
发布于 2019-07-11 08:45:26
因为根据文档,大多数成员都是可选的,所以我相信您只需要向options对象提供需要更改/更新的内容。
var paymentIntentService = new PaymentIntentService();
var paymentIntent = paymentIntentService.Get(transaction.ExternalTransactionId);
if (null != destinationStripeAccount) {
var options = new PaymentIntentUpdateOptions() {
TransferData = new PaymentIntentTransferDataOptions {
Destination = destinationStripeAccount.AccountId
}
};
paymentIntentService.Update(paymentIntent.Id, options);
}
https://stackoverflow.com/questions/56980060
复制相似问题