我正在使用webforms,我需要创建一个http form并将其发布到我的一个客户的支付网关。 我正在使用显示在母版页中的用户控件,但是他们已经在页面上有一个现有的
form
从后面的代码中用C#创建和发布表单的最佳实践方法是什么? 目前我有以下内容:
var nvc = new System.Collections.Specialized.NameValueCollection { {"EWAY_ACCESSCODE", ewayResponse.AccessCode}, {"EWAY_CARDNAME", txtCcName.Text}, {"EWAY_CARDNUMBER", txtCcNumber.Text}, {"EWAY_CARDEXPIRYMONTH", ddlCcExpMonth.SelectedValue}, {"EWAY_CARDEXPIRYYEAR", ddlCcExpYear.SelectedValue}, {"EWAY_CARDCVN", txtCcv.Text} }; var client = new WebClient(); client.UploadValues(ewayResponse.FormActionURL, nvc);
这确实有效,但有没有更好/替代的方法呢?
除了之前的建议:
为什么不会(更简单) Button.PostbackUrl工作?
此外,假设这是您所指的支付网关,您正在进行服务器端POST,这会影响PCI合规性 (与客户端/浏览器的直接表单发布相比)。
心连心。
这是我使用的解决方案:
http://jerschneid.blogspot.com/2007/03/hide-form-tag-but-leave-content.html
警告(自己的博客文章):
http://codersbarn.com/post/2008/03/08/Solution-to-ASPNET-Form-PayPal-Problem.aspx