C# MVC Paypal rest api返回错误
我的项目包括Paypal rest api,如下代码所示:C# MVC Paypal rest api返回错误,c#,asp.net-mvc,rest,paypal,C#,Asp.net Mvc,Rest,Paypal,我的项目包括Paypal rest api,如下代码所示: private static string accessToken { get { string tokenAccess = new OAuthTokenCredential(ConfigManager.Instance.GetProperties()["ClientID"], ConfigManager.Instance.GetProperti
private static string accessToken
{
get
{
string tokenAccess = new OAuthTokenCredential(ConfigManager.Instance.GetProperties()["ClientID"], ConfigManager.Instance.GetProperties()["ClientSecret"]).GetAccessToken();
return tokenAccess;
}
}
public ActionResult Pay(FormCollection form)
{
var appid = Guid.Parse(form["ApartId"]);
var username = form["EmailAddress"];
var price = form["Price"];
var amounts = form["Amount"];
var user = _bb.Users.Single(m => m.UserName == username);
var genismodel = _bb.Aparts.Include("Reservations").Single(m => m.ApartID == appid);
var reservasyon = new Reservation
{
ReservationStatus = false,
ReservationNumber = "0123456877",
DateForBegin = Convert.ToDateTime(form["BeginDate"]),
DateForEnd = Convert.ToDateTime(form["EndDate"]),
ReservationDate = DateTime.Now,
UserID = user.UserID,
ReservationTotal =Convert.ToDecimal(price),
ReservationAmount = Convert.ToDecimal(amounts),
ReservationType = "Paypal",
ReservationState = ""
};
reservasyon.Aparts.Add(genismodel);
_bb.Reservations.AddObject(reservasyon);
_bb.SaveChanges();
var reservid = reservasyon.ReservationID;
int orderId = reservid;
string requestUrl = Request.Url.OriginalString;
string returnUrl = ConfigurationManager.AppSettings["ReturnURL"];
string cancelUrl = ConfigurationManager.AppSettings["CancelURL"];
var amount = amounts;
var description = form["ApartName"];
Payment pymnt = null;
pymnt = CreatePayment(username, PaymentMethod.paypal, amount, description, returnUrl, cancelUrl);
if (pymnt != null)
{
var pymntId = pymnt.id;
var state = pymnt.state;
var reservasyonum = _bb.Reservations.Single(m => m.ReservationID == reservid);
reservasyonum.ReservationState = state;
reservasyonum.ReservationNumber = pymntId;
_bb.SaveChanges();
var dredirectUrl = GetApprovalUrl(pymnt);
return Redirect(dredirectUrl);
}
return View();
}
问题来自这里:
public Payment CreatePayment(string email, PaymentMethod paymntMethod, string orderAmount, string orderDescription, string returnUrl, string cancelUrl)
{
Payment pymnt = null;
var amountDetails = new AmountDetails {subtotal = orderAmount};
var amount = new Amount {currency = "USD"};
var total = Convert.ToDouble(orderAmount);
amount.total = total.ToString();
amount.details = amountDetails;
var redirectUrls = new RedirectUrls {return_url = returnUrl, cancel_url = cancelUrl};
var transaction = new Transaction {amount = amount, description = orderDescription};
var transactions = new List<Transaction> {transaction};
var payer = new Payer {payment_method = paymntMethod.ToString()};
var pyment = new Payment
{
intent = "sale",
payer = payer,
transactions = transactions,
redirect_urls = redirectUrls
};
pymnt = pyment.Create(accessToken);
return pymnt;
}
调用payment.CreateaccessToken时,错误为:
konum:PayPal.PayPalResource.ConfigureAndExecute[T]APIContext APIContext,
HttpMethod HttpMethod,字符串资源,字典2头映射,字符串负载
konum:PayPal.PayPalResource.ConfigureAndExecute[T]APIContext APIContext,
HttpMethod HttpMethod,字符串资源,字符串负载
konum:PayPal.Api.Payments.Payment.CreateAPIContext apiContext
konum:PayPal.Api.Payments.Payment.CreateString accessToken
konum:Cozy.Controllers.ReservationController.CreatePaymentString电子邮件,
PaymentMethod paymntMethod,字符串orderAmount,字符串
orderDescription、String returnUrl、String cancelUrl
C:\Users\user\Documents\Projects\CozyLast\Cozy\Controllers\ReservationController.cs
içinde:satır 141
konum:Cozy.Controllers.ReservationController.PayFormCollection表单
C:\Users\user\Documents\Projects\CozyLast\Cozy\Controllers\ReservationController.cs içinde:satır 99
konum:lambda_方法闭包,ControllerBase,对象[]
konum:System.Web.Mvc.ActionMethodDispatcher.ExecuteControllerBase
控制器,对象[]参数
konum:System.Web.Mvc.ReflectedActionDescriptor.ExecuteControllerContext
controllerContext,IDictionary`2参数
konum:System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodControllerContext
controllerContext,ActionDescriptor ActionDescriptor,IDictionary 2
参数
konum:System.Web.Mvc.Async.AsyncControllerActionInvoker.c\uu DisplayClass42.b\u41
konum:System.Web.Mvc.Async.AsyncResultRapper.c_uuDisplayClass8`1.b_uuu7IAsyncResult
_
konum:System.Web.Mvc.Async.AsyncResultRapper.WrappedAsyncResult 1.End
konum:System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodIAsyncResult
异步结果
konum:System.Web.Mvc.Async.AsyncControllerActionInvoker.c\uuu DisplayClass37.c\uuuu DisplayClass39.b\uu 33
konum:System.Web.Mvc.Async.AsyncControllerActionInvoker.c__DisplayClass4f.b__49
怎么了?感谢您的回复。如果您能将异常翻译成英语,我们可以理解并找到一些信息。我想第141行有点不对劲