在C#中创建和发布代码的最佳方法

时间:2013-11-11 01:15:00

标签: c# asp.net http-post code-behind

我正在使用网络表单,我需要为我的一个客户创建并POST一个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);

这确实有效,但有没有更好/替代方法呢?

2 个答案:

答案 0 :(得分:4)

除了之前的建议:

  • 为什么(简单的)Button.PostbackUrl不起作用?

    <asp:Button ID="externalPost" runat="server" PostBackUrl="http://www.somewhere.com/" Text="Post Somewhere" />
    

另外,假设这是您所指的支付网关,您正在进行服务器端POST,这会对 PCI合规性产生影响(与来自客户端/浏览器的直接表单帖子相比) )。

H个。

答案 1 :(得分:1)