我有一个相当简单的 ASP.Net 站点,它使用谷歌结帐(我有一个图像按钮,其 PostBackUrl 设置为谷歌地址传递隐藏字段的值),它工作正常。
我一直在将此应用程序移至 MVC,但我不确定如何处理。我考虑过使用 jQuery 表单,但我不相信这在这种情况下会起作用,因为有时它们会被重定向到谷歌页面。有人在 asp.net MVC 应用程序中使用过 google checkout 吗?
我有一个相当简单的 ASP.Net 站点,它使用谷歌结帐(我有一个图像按钮,其 PostBackUrl 设置为谷歌地址传递隐藏字段的值),它工作正常。
我一直在将此应用程序移至 MVC,但我不确定如何处理。我考虑过使用 jQuery 表单,但我不相信这在这种情况下会起作用,因为有时它们会被重定向到谷歌页面。有人在 asp.net MVC 应用程序中使用过 google checkout 吗?
你可以像以前一样做同样的事情,只是你最终手动做。
听起来您只使用基本版本,是吗?
您创建一个 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 风格,但这显示了您需要做的真正基本版本。