Asp.net mvc 在ASP.NET MVC3中重定向到支付网关
我通过MVC3应用程序付款。我的问题是如何通过MVC应用程序的一些隐藏输入重定向到外部支付网关进行网上银行 我有一个查看页面,该页面有信用卡和网上银行选项,该选项是基于单选按钮选择的Asp.net mvc 在ASP.NET MVC3中重定向到支付网关,asp.net-mvc,asp.net-mvc-3,paypal,payment-gateway,Asp.net Mvc,Asp.net Mvc 3,Paypal,Payment Gateway,我通过MVC3应用程序付款。我的问题是如何通过MVC应用程序的一些隐藏输入重定向到外部支付网关进行网上银行 我有一个查看页面,该页面有信用卡和网上银行选项,该选项是基于单选按钮选择的 @using (Html.BeginForm()) { @Html.ValidationSummary(true) @Html.AntiForgeryToken() @Html.HiddenFor(m => m.newPolicyDetails.ReferenceNumber, new
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
@Html.AntiForgeryToken()
@Html.HiddenFor(m => m.newPolicyDetails.ReferenceNumber, new Dictionary<string, object> { { "id", "hdReferenceNumber" }, { "name", "hdReferenceNumber" } })
</article>
<!-- Start Code - payment page - Payment Option Selection section -->
<article>
<section>
<div>
<p>Please select your payment option.</p>
<table cellpadding="0" cellspacing="10">
<tr>
<td>
@Html.RadioButton("PaymentOption", "1", "Credit Card", false, Model.PaymentOption, new Dictionary<string, object> { { "id", "RdCreditCard" }, { "name", "PaymentoptionSelection" }, { "value", "Credit Card" }, { "list", "{'1:Credit Card'}" } })
</td>
</tr>
<tr>
<td>
@Html.RadioButton("PaymentOption", "2", "Netbanking", false, Model.PaymentOption, new Dictionary<string, object> { { "id", "RdNetbanking" }, { "name", "PaymentoptionSelection" }, { "value", "Netbanking" }, { "list", "{'2:Netbanking'}" } })
</td>
</tr>
</table>
</div>
</section>
</article>
<!-- End Code - payment page - Payment Option Selection section -->
<!-- Start Code - payment page - Credit Card Details Entry Section -->
<article id="creditCard">
<section>
<div>
<h1>Credit Card</h1>
<p>Please enter credit card information.</p>
<table cellpadding="0" cellspacing="2">
<tr>
<td>Card Number</td>
<td>
@Html.TextBoxFor(m => m.CardNumberCol1, new Dictionary<string, object> { { "id", "txtCardNumberCol1" }, { "name", "CardNumberCol1" }, { "maxLength", "4" }, { "onkeyup", "movetoNext(this, 'txtCardNumberCol2')" } })
</td>
<td>
@Html.TextBoxFor(m => m.CardNumberCol2, new Dictionary<string, object> { { "id", "txtCardNumberCol2" }, { "name", "CardNumberCol2" }, { "maxLength", "4" }, { "onkeyup", "movetoNext(this, 'txtCardNumberCol3')" } })
</td>
<td>
@Html.TextBoxFor(m => m.CardNumberCol3, new Dictionary<string, object> { { "id", "txtCardNumberCol3" }, { "name", "CardNumberCol3" }, { "maxLength", "4" }, { "onkeyup", "movetoNext(this, 'txtCardNumberCol4')" } })
</td>
<td>
@Html.TextBoxFor(m => m.CardNumberCol4, new Dictionary<string, object> { { "id", "txtCardNumberCol4" }, { "name", "CardNumberCol4" }, { "maxLength", "4" }, { "onkeyup", "movetoNext(this, 'monthPicker')" } })
</td>
</tr>
<tr>
<td> </td>
<td colspan="4">Please enter card number by 4 digits, left-aligned</td>
</tr>
<tr>
<td>Month/Year</td>
<td>
@Html.DropDownListFor(m => m.ValidMonth, new List<SelectListItem> { }, new Dictionary<string, object> { { "id", "monthPicker" }, })
</td>
<td>
@Html.DropDownListFor(m => m.ValidYear, new List<SelectListItem> { }, new Dictionary<string, object> { { "id", "yearPicker" }, { } })
</td>
</tr>
</table>
<ul>
<li>
<input type="submit" id="Settle" name="Settle" value="PaymentScreen_Settle"/>
</li>
<li>
<a href="#" id="LnkCCardCancel">Cancel</a>
</li>
</ul>
</div>
</section>
</article>
<!-- End Code - payment page - Credit Card Details Entry Section -->
<!-- Start Code - payment page - Netbanking Section -->
<article id="netbanking">
<section">
<div">
<h1>Netbanking</h1>
<p>You will be directed to your bank site.</p>
@Html.Hidden("ver","abcd")
@Html.Hidden("bill", "abcd")
@Html.Hidden("shop", "abcd")
@Html.Hidden("success", "http://www.abcd.com/abcd/success")
@Html.Hidden("failure", "http://www.abcd.com/abcd/failure")
@Html.Action("https://www.netbankingsite.com/abcdefgh12345")
<ul>
@*@Html.ActionLink("Next", "PolicyDetailsScreen", "PolicyDetailsUC", null, new Dictionary<string, object> { { "id", "btnNext" }, { "name", "btnNext" }, { "value", "btnNext" },})*@
<li>
<input type="submit" id="BtnNext" name="BtnNext" value="Next" data-action="@Url.Action("https://https://www.netbankingsite.com/abcdefgh12345")" />
</li>
<li>
<a href="#" id="LnkCStoreCancel">Cancel</a>
</li>
</ul>
</div>
</section>
</article>
<!-- End Code - payment page - Netbanking Section -->
<!-- Start Code - payment page - Back Button section -->
<section>
@Html.ActionLink("Back", "AgreementScreen", "PaymentUC", new { policyNumber = Model.newPolicyDetails.ReferenceNumber }, new { id = "btnBack", name = "btnBack"})
</section>
<!-- End Code - payment page - Back Button section -->
}
对于必须使用POST方法重定向到的abov URL,几乎没有隐藏的输入
第一个问题
我正在努力从MVC3重定向到站点
第二个问题:
由于我在同一个查看页面中有信用卡和网上银行,如果我单击相应的支付按钮,则会调用信用卡控制器。有没有办法在查看页面中使用2@html.begin表单,这样我就可以分别发布信用卡和网上银行的信息
第三个问题
我必须有两个信用卡和网上银行在同一个查看页面。如果我选择netbanking单选按钮,则netbanking部件视图页面部分将显示在用户单选按钮下方,信用卡页面将对用户隐藏。此隐藏部分使用jquery完成。我从数据库中获取详细信息,并通过模型帮助它查看页面html控件
所以,我怎样才能在不影响信用卡的情况下从查看页面重定向到网上银行,并且只通过POST操作将隐藏的输入传递到URL。如果我使用信用卡付款,那么我不应该向网上银行url发布任何输入,也不应该重定向。我对如何处理这件事有点困惑。所以,向技术伙伴伸出援手。。。!我知道这必须作为web服务来完成,但在mvc中完成是必需的
感谢您的帮助和耐心阅读这个大问题。您想要的全部功能只能通过jquery实现……必须有相同的方式。。。但我相信我们可以在mvc中做到这一点
https://https://www.netbankingsite.com/abcdefgh12345