В курсе многоплановости play-by-play-get-paid-dot- net -core-modern-payment-gateways я пытаюсь реплицировать подписку PayPal, но не могу получить идентификатор плана PayPal, потому что создать / активный план не удается , Используя пакет nuget PayPal 2.0.0-бета00. Я также обновил идентификатор клиента и секрет.
SerializationException: ожидаемый элемент 'root' из пространства имен '' .. Обнаружен 'None' с именем '', пространство имен ''.
private async Task SeedBillingPlans()
{
var client = _clientFactory.GetClient();
foreach (var plan in BillingPlanSeed.PayPalPlans(
Url.Action("Return", "Subscription", null, Request.GetUri().Scheme),
Url.Action("Cancel", "Subscription", null, Request.GetUri().Scheme)))
{
// Create Plan
var request = new PlanCreateRequest().RequestBody(plan);
var result = await client.Execute(request);
var obj = result.Result<Plan>();
// Activate Plan
var activateRequest = new PlanUpdateRequest<Plan>(obj.Id)
.RequestBody(GetActivatePlanBody());
await client.Execute(activateRequest);
// Add to database record
var dbPlan = _dbContext.BillingPlans.FirstOrDefault(x =>
x.Name == obj.Name);
if (dbPlan != null && string.IsNullOrEmpty(dbPlan.PayPalPlanId))
{
dbPlan.PayPalPlanId = obj.Id;
await _dbContext.SaveChangesAsync();
}
}
}
Project источник: github.com/bjcull/BeerPal