2010-08-26 5 views
2

Kentico - это система управления контентом C#/Asp.NET, которую мы используем, и я пытаюсь реализовать интеграцию SIM-карты authorize.net (перенаправление пользователя на сервер authorize.net для совершения покупки через сообщение формы). Kentico использует мастер-страницы, так что это будет зверь. Первая проблема заключалась в получении формы для публикации сообщений на серверах authorize.net. Я смог сделать это, используя следующее.Authorize.Net Получение SIM-карты в Kentico

<script type="text/javascript"> 
    theForm.action = "https://test.authorize.net/gateway/transact.dll"; 
</script> 

достаточно легко (theForm == форма главной страницы), теперь вопрос заключается в том, что изначально я использовал код позади, чтобы заполнить скрытые поля ввода и меняет все имена этих полей ввода , Это делает невозможным для authorize.net знать, что вы делаете.

Проводили ли какие-либо подобные интеграции раньше? И если да, то каков наиболее подходящий способ решения этой проблемы?

У меня есть несколько идей, но все они связаны с тем, что я считаю чрезвычайно грязными методами, чтобы заставить его работать.

ответ

3

вам необходимо выполнить следующие шаги, чтобы взять имена ваших полей ввода под вашим контролем:

1) Используйте свой код, чтобы установить платежный шлюз URL-адрес

2) Место ASP.NET Буквенный контроль на ASPX странице, что-то вроде: < осины: Буквенный Runat = «сервер» ID = «мышимоиПоля»/>

3) Перейти к коду позади и инициализации литерала HTML код всех полей ввода. Для каждого поля ввода задается его собственный идентификатор. например: myFields.Text + = "< input type =" text "id =" carnumber "name =" cardnumber "/ >"; ....

После нажатия кнопки пользователь перенаправляется на URL-адрес платежного шлюза, где POSTed-данные из ваших полей ввода доступны под требуемыми идентификаторами. Надеюсь, вы найдете это полезным.