У меня есть контроллер, который обрабатывает процесс оплаты, когда я вызываю его из представления, как показано ниже:
<input type="button" value="Create" onclick="location.href='@Url.Action("Pay", "Payment")'" />
Он работает нормально и перенаправляет меня на PayPal Gateway.
Но он не работает, когда я вызываю тот же метод для определенного события из другого контроллера, как показано ниже:
PaymentController payment = new PaymentController();
payment.PaymentWithPaypal(obj.Amount);
Вот фрагмент кода из контроллера платежей:
[System.Web.Http.HttpPost]
public ActionResult PaymentWithPaypal(string amount)
{
//getting the apiContext
APIContext apiContext = PaypalConfiguration.GetAPIContext();
try
{
string payerId = Request.Params["PayerID"];
if (string.IsNullOrEmpty(payerId))
{...}
}
}
Я получил эту ошибку:
{"Ссылка на объект не установлена на экземпляр объекта."} System.Exception {System.NullReferenceException}
похожечто «Запрос» является нулевым, и он не имеет HttpContext!
Хорошо, мне нужно, чтобы имитировать точное поведение вызова ActionResult из представления.
Большое спасибо,