7

我有一个相当简单的 ASP.Net 站点,它使用谷歌结帐(我有一个图像按钮,其 PostBackUrl 设置为谷歌地址传递隐藏字段的值),它工作正常。

我一直在将此应用程序移至 MVC,但我不确定如何处理。我考虑过使用 jQuery 表单,但我不相信这在这种情况下会起作用,因为有时它们会被重定向到谷歌页面。有人在 asp.net MVC 应用程序中使用过 google checkout 吗?

4

1 回答 1

2

你可以像以前一样做同样的事情,只是你最终手动做。

听起来您只使用基本版本,是吗?

您创建一个 HTML 表单,将 Action 设置为 Google 结帐流程,添加正确的隐藏字段(您的控制器传递的模型将使用正确的值填充)然后您有一个提交按钮(或图像如果你更喜欢)。

因此,谷歌的基本 HTML 页面的一个示例,针对一些 MVC 风格进行了修改,如下所示:

<form method="POST"
  action="https://checkout.google.com/api/checkout/v2/checkoutForm/Merchant/<%= Model.MerchantId %>"
      accept-charset="utf-8">

  <input type="hidden" name="item_name_1" value="<%= Model.Item.Name %>"/>  
  <input type="hidden" name="item_description_1" value="<%= Model.Item.Description %>>  
  <input type="hidden" name="item_quantity_1" value="<%= Model.Item.Quantity %>"/>  
  <input type="hidden" name="item_price_1" value="<%= Model.Item.Price %>"/>  
  <input type="hidden" name="item_currency_1" value="<%= Model.Item.Currency %>"/>  
  <input type="hidden" name="ship_method_name_1" value="<%= Model.Shipping.Price %>"/>  
  <input type="hidden" name="ship_method_price_1" value="<%= Model.Shipping.Price %>"/>  
  <input type="hidden" name="ship_method_currency_1" value="<%= Model.Shipping.Currency %>"/>  
  <input type="hidden" name="tax_rate" value="<%= Model.Tax.Rate %>"/>  
  <input type="hidden" name="tax_us_state" value="<%= Model.Tax.State %>"/>  
  <input type="hidden" name="_charset_"/>  
  <input type="image" name="Google Checkout" alt="Fast checkout through Google"
src="http://checkout.google.com/buttons/checkout.gif?merchant_id=<%= Model.MerchantId %>&w=180&h=46&style=white&variant=text&loc=en_US"
height="46" width="180"/>  
</form>  

显然,您可以通过使用表单帮助器 Html.Hidden 等来使所有这些变得更加 MVC 风格,但这显示了您需要做的真正基本版本。

于 2010-06-05T19:53:44.677 回答