Я пытаюсь реализовать PayPal через их .NET SDK. (C#) Я работаю с ASP.NET (веб-формы). Всякий раз, когда я пытаюсь создать (просто конструктор) новый объект оплаты, я получаю NullReferenceException с абсолютно никаких деталей в нем ...PayPal .NET SDK - новый Payment() - исключает исключение NullReference
Вот исключение:
System.NullReferenceException was unhandled by user code HResult=-2147467261 Message=Object reference not set to an instance of an object. Source=<SolutionName> StackTrace: at <SolutionName>.Classes.MFPal.Checkout(List`1 cartItems) in C:\<SolutionName>\<FolderName>\Classes\MFPal.cs:line 46 at <SolutionName>.Pages.Private.ShoppingCart.btnPPCheckout_Click(Object sender, EventArgs e) in C:\<SolutionName>\<FolderName>\Pages\Private\ShoppingCart.aspx.cs:line 164 at System.Web.UI.WebControls.LinkButton.OnClick(EventArgs e) at System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) InnerException:
InnerException есть null между прочим.
Я уже отделил код до минимума, я сначала тестировал заполненный ItemList, теперь я просто использую пустой. Теперь я также использую «0» для каждой цены, но мои первые тесты были сделаны с правильными цифрами. Сначала я просто использовал;
Payment.Create(apiContext, new Payment() { ... });
Но я не мог определить NullReference, так что теперь код выглядит следующим образом:
var apiContext = new APIContext(Config.PayPalAccessToken);
apiContext.Config = ConfigManager.Instance.GetProperties();
// ONLY ADDED FOR MORE TESTING.
apiContext.HTTPHeaders = new Dictionary<string, string>();
// NULLREF ON THE NEXT LINE
Payment pym = new Payment() {
intent = "sale",
redirect_urls = {
return_url = "http://<DomainName>/home",
cancel_url = "http://<DomainName>/home"
},
payer = { payment_method = "paypal" },
transactions = new List<Transaction>() {
new Transaction() {
amount = {
currency = "USD",
total = "0",
details = new Details() {
tax = "0",
shipping = "0",
subtotal = "0"
}
},
item_list = new ItemList() { items = new List<Item>() },
description = "asd",
invoice_number = "1111111"
}
}
};
ли кто испытывает подобные проблемы? Я что-то упускаю? Нужна собственность? Когда я отлаживаю, я не могу найти ничего нулевого.
Спасибо заранее!