Вот как я это исправил.
Как вы сказали, добавьте @ Html.Raw () к Html.CheckoutFormInputs (true)
Другое изменение, которое нужно внести, -
namespace AuthorizeNet.Helpers -> CheckoutFormBuilders.cs
добавить использование
using System.IO;
Изменить
HttpResponseBase to TextWriter
Я сделал это в трех местах.
HttpResponseBase _response; to TextWriter _response;
public SIMForm(TextWriter response, string returnUrl, decimal amount,
string apiLogin, string transactionKey)
:this(response,returnUrl,amount,apiLogin,transactionKey,true){}
public SIMForm(TextWriter response, string returnUrl, decimal amount,
string apiLogin, string transactionKey, bool isTest) {
_response = response;
_amount = amount;
_apiLogin = apiLogin;
_transactionkey = transactionKey;
_returnUrl = returnUrl;
_isTest = isTest;
OpenForm();
}
Осталось еще два изменения
Как указано в ответе tpeczek, вам нужно изменить
helper.ViewContext.HttpContext.Response
на
helper.ViewContext.Writer
Это будетпохожи
public static SIMForm BeginSIMForm(this HtmlHelper helper, string returnUrl,
decimal amount, string apiLogin,
string transactionKey) {
return new SIMForm(helper.ViewContext.Writer,
returnUrl,amount,apiLogin,
transactionKey,true);}
public static SIMForm BeginSIMForm(this HtmlHelper helper, string returnUrl,
decimal amount, string apiLogin,
string transactionKey, bool isTest) {
return new SIMForm(helper.ViewContext.Writer,
returnUrl, amount, apiLogin,
transactionKey,isTest);}