Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PayPal C#.Net SDK信用卡支付示例空引用异常_C#_Paypal - Fatal编程技术网

PayPal C#.Net SDK信用卡支付示例空引用异常

PayPal C#.Net SDK信用卡支付示例空引用异常,c#,paypal,C#,Paypal,谢谢你看我的问题 我正在尝试使用PayPal SDK。 一旦: payment.Create(apiContext) 执行,它将声明: PayPal.dll中发生类型为“PayPal.PayPaleException”的异常,但未在用户代码中处理 其他信息:对象引用未设置为对象的实例。 我意识到这是一个标准的空引用异常,我只是不知道出了什么问题,因为它在代码示例中工作。 这段代码直接取自,更具体地说,取自 以下是我的版本: Dictionary\u paypalConfig; 字典Paypa

谢谢你看我的问题

我正在尝试使用PayPal SDK。 一旦:

payment.Create(apiContext)
执行,它将声明:

PayPal.dll中发生类型为“PayPal.PayPaleException”的异常,但未在用户代码中处理
其他信息:对象引用未设置为对象的实例。
我意识到这是一个标准的空引用异常,我只是不知道出了什么问题,因为它在代码示例中工作。 这段代码直接取自,更具体地说,取自

以下是我的版本:

Dictionary\u paypalConfig;
字典PaypalConfig
{
得到
{
如果(_paypalConfig==null)
{
_paypalConfig=ConfigManager.Instance.GetProperties();
}
返回paypalConfig;
}
}
字符串\u paypalAccessToken;
字符串PaypalAccessToken
{
得到
{
如果(_paypalAccessToken==null)
{
_PayPalacessToken=新的OAuthTokenCredential(PaypalConfig).GetAccessToken();
}
return_paypalAccessToken;
}
}
APIContext_paypalApiContext;
APIContext PaypalApiContext
{
得到
{
如果(_paypalApiContext==null)
{
_paypalApiContext=新的APIContext(PaypalAccessToken);
}
返回paypalApiContext;
}
}
公共行动结果薪酬()
{
var apiContext=PaypalApiContext;
//交易定义了付款合同——付款的目的和履行人。
var事务=新事务()
{
金额=新金额()
{
货币=“美元”,
total=“7”,
详细信息=新的详细信息()
{
shipping=“1”,
小计=“5”,
tax=“1”
}
},
description=“这是付款交易描述。”,
项目列表=新项目列表()
{
items=新列表()
{
新项目()
{
name=“项目名称”,
货币=“美元”,
price=“1”,
数量=“5”,
sku=“sku”
}
},
发货地址=新发货地址
{
city=“约翰斯顿”,
国家/地区代码=“美国”,
line1=“北面大街52号”,
邮政编码=“43210”,
state=“噢”,
收件人\u name=“Joe买家”
}
}
};
//一种资源,表示为付款提供资金的付款人。
var付款人=新付款人()
{
付款方式=“信用卡”,
融资工具=新列表()
{
新基金仪器()
{
信用卡=新信用卡()
{
账单地址=新地址()
{
city=“约翰斯顿”,
国家/地区代码=“美国”,
line1=“北面大街52号”,
邮政编码=“43210”,
state=“噢”
},
cvv2=“874”,
到期月份=11,
到期年=2018年,
first_name=“Joe”,
last_name=“购物者”,
number=“4877274905927862”,
type=“visa”
}
}
},
付款人信息=新付款人信息
{
电子邮件=”test@email.com"
}
};
//支付资源;使用上述类型和意图创建一个“销售”或“授权”`
var付款=新付款()
{
intent=“销售”,
付款人=付款人,
事务=新列表(){transaction}
};
//使用有效的APIContext创建付款
var createdPayment=payment.Create(apiContext);
返回视图();
}
完全例外情况如下:

PayPal.PayPaleException未由用户代码处理
HResult=-2146233088
Message=对象引用未设置为对象的实例。
来源=贝宝
堆栈跟踪:
在PayPal.PayPalResource.ConfigureAndExecute[T](Dictionary`2 config,IAPICallPreHandler apiCallPreHandler,HttpMethod HttpMethod,String resourcePath)
在PayPal.PayPalResource.ConfigureAndExecute[T](APIContext APIContext,HttpMethod HttpMethod,字符串资源,字符串负载)
在PayPal.Api.Payment.Create(APIContext-APIContext,Payment-Payment)
在PayPal.Api.Payment.Create(APIContext-APIContext)
在c:\Users\Rian\Documents\Visual Studio 2013\Projects\PaypalTest\PaypalTest\Controllers\HomeController.cs中的PaypalTest.Controllers.HomeController.Pay()处:第138行
在lambda_方法中(闭包、控制器基、对象[])
位于System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller,Object[]参数)
位于System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext ControllerContext,IDictionary`2参数)
位于System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext ControllerContext,ActionDescriptor ActionDescriptor,IDictionary`2参数)
在System.Web.Mvc.Async.AsyncControllerActionInvoker.ActionInvoke.InvokeSynchronousActionMethod()中
在System.Web.Mvc.Async.AsyncControllerActionInvoker.b_u39(IAsyncResult asyncResult,ActionInvokeInnerInvokeState)
在