Перенаправить на другую страницу, используя метод Post из кода позади - PullRequest
24 голосов
/ 13 февраля 2010

Я хочу реализовать платежный сервис. Я создам некоторые значения в коде, а затем, используя метод post, мне нужно отправить эти значения в платежный шлюз, и пользователь должен перенаправить на эту страницу.

Я не могу использовать действие формы, потому что мне нужно создать некоторые значения и сохранить что-то в БД в коде позади.

как я могу это реализовать? Если я могу опубликовать данные на другой странице своего приложения и могу отправить эту страницу программно, это может мне помочь.

Спасибо

1 Ответ

19 голосов
/ 13 февраля 2010
string url = "3rd Party Url";

StringBuilder postData = new StringBuilder();

postData.Append("first_name=" + HttpUtility.UrlEncode(txtFirstName.Text) + "&");
postData.Append("last_name=" + HttpUtility.UrlEncode(txtLastName.Text));

//ETC for all Form Elements

// Now to Send Data.
StreamWriter writer = null;

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";                        
request.ContentLength = postData.ToString().Length;
try
{
    writer = new StreamWriter(request.GetRequestStream());
    writer.Write(postData.ToString());
}
finally
{
    if (writer != null)
        writer.Close();
}

Response.Redirect("NewPage");

Посмотрите на этот постер

...