2012-02-22 4 views
1

Как перенаправить пользователя из действия с запросом POST?Как перенаправленный пользователь с методом POST?

у меня есть:

public ViewResult AddMoneyOnPay() 
     { 
      Onpay onpay = new Onpay(); 
      onpay.convert = "yes"; 
      onpay.pay_mode = "fix"; 
      onpay.price_final = "true"; 

      return View(onpay); 
     } 

Вид:

@using (Html.BeginForm("AddMoneyOnPay", "Transaction", FormMethod.Post)) 
{ 
    @Html.ValidationSummary(true) 
    <fieldset> 
     <legend>Onpay</legend> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.pay_mode) 
      @Html.ValidationMessageFor(model => model.pay_mode) 
     </div> 
     <div class="editor-label"> 
      @Html.LabelFor(model => model.price) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.price) 
      @Html.ValidationMessageFor(model => model.price) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.currency) 
      @Html.ValidationMessageFor(model => model.currency) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.pay_for) 
      @Html.ValidationMessageFor(model => model.pay_for) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.md5) 
      @Html.ValidationMessageFor(model => model.md5) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.convert) 
      @Html.ValidationMessageFor(model => model.convert) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.url_success) 
      @Html.ValidationMessageFor(model => model.url_success) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.url_fail) 
      @Html.ValidationMessageFor(model => model.url_fail) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.user_email) 
      @Html.ValidationMessageFor(model => model.user_email) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.note) 
      @Html.ValidationMessageFor(model => model.note) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.one_way) 
      @Html.ValidationMessageFor(model => model.one_way) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.price_final) 
      @Html.ValidationMessageFor(model => model.price_final) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.direct_no) 
      @Html.ValidationMessageFor(model => model.direct_no) 
     </div> 
     <p> 
      <input type="submit" value="Create" /> 
     </p> 
    </fieldset> 
} 

POST действие

[HttpPost] 
     public ViewResult AddMoneyOnPay(Onpay onpay) 
     { 
      string secretKEy = "fH12312IO"; 
      onpay.md5 = GetHash(string.Format("{0};{1};{2};{3};{4}", onpay.pay_mode, onpay.price, onpay.currency, onpay.pay_for, onpay.convert, secretKEy)); 
      //SEND POST to url http://paysite.ru/blablabla 
     } 

ответ

1

Пусть ваш метод AddMoneyOnPay вернуть ActionResult, а затем написать:

return Redirect(returnUrl); 
+0

Как отправить данные сообщения? – Mediator

+2

Данные сообщения будут занесены в ваш объект 'Onpay' - сделайте всю свою обработку его в вашей перегрузке POST из' AddMoneyOnPay() ', а затем перенаправите пользователя с помощью' Redirect() '. –

+0

Я не понимаю вас = ( – Mediator

Смежные вопросы