0

我有一个使用 Webforms 构建的解决方案,该解决方案将大约 10 个字段传递到 Realex 支付处理器服务器(我使用重定向方法),并且在那里一切正常。我是 MVC 的新手,我正在尝试使用 MVC 实现与我目前使用 Webforms 设置的功能相同的功能。在我的 Webforms 解决方案中,我使用 buttonclick 事件处理程序和 Postback URL 来收集我需要传递给 Realex 的数据,并且 URL 在 Postback 中进行管理。

使用 MVC,我似乎没有使用事件处理程序或回发 URL 声明,或者如果我这样做,我只能回发到表单,而我需要将我的数据发布到外部网站。

所以在我的 MVC 控制器中,我已经硬编码了我试图传递给 Realex 的值(用于测试目的)。

上面的最后一行(返回重定向)将我带到 Realex 页面(虽然它不会让我看到用于输入信用卡详细信息的框,而是返回一个 506 错误,说“无效的 MerchantID 或帐号)...

我一直在 Realex 上,他们告诉我他们可以看到上面我试图传递给他们的服务器的数据,比如我的帐户 ID、我的订单参考等。

我也试过在我的视图中这样做,只是为了让它正确发布:

    <input id="ORDER_ID" name="ORDER_ID" type="hidden" value="6264286038162642860381" />
    <input id="ACCOUNT" name="ACCOUNT" type="hidden" value="XXXXXXXXX" />
    <input id="AMOUNT" name="AMOUNT" type="hidden" value="100" />

/>

但是我不知道如何将我的表单字段与我的控制器连接起来,我知道我仍然在这里考虑“Webforms”,只是没有考虑 MVC,因为我对 MVC 的经验太少并且正在寻找过渡到 MVC 比我更困难。

提前感谢您对此的任何帮助...

4

1 回答 1

0

我认为您想要这样的东西,我敢肯定有一个更优雅的解决方案,但这应该可行。

 public ActionResult ShoppingCart(decimal _TotalPriceBox = 1)
 {
    //After populating your shopping cart model

    ViewBag.MerchantId = My_Cart.MYUSERIDSTRING;
    ViewBag.Account = My_Cart.ACCOUNT;
    ViewBag.OrderId = My_Cart.ORDER_ID;
    ViewBag.Amount = My_Cart.AMOUNT;
    //Rest of needed properties
    return View()
  }

然后在您的视图中的表单中

<form action="https://epage.payandshop.com/epage.cgi" method="post">
  <input id="ORDER_ID" name="ORDER_ID" type="hidden" value="@ViewBag.OrderId" />
  <input id="ACCOUNT" name="ACCOUNT" type="hidden" value="@ViewBag.Account" />
  <input id="AMOUNT" name="AMOUNT" type="hidden" value="@ViewBag.Amount" />
  //Rest of inputs needed
  <input type="submit" value="send" />
 </form>
于 2014-08-16T13:02:11.507 回答