2012-02-22 50 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> 
} 

動作後

[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 2012-02-22 15:08:20

+2

POST數據將填充到你的'Onpay'對象 - 做你的它處理的AddMoneyOnPay()''的您的文章超載,然後使用將用戶重定向'重定向()'。 – 2012-02-22 15:40:32

+0

我不明白你=( – Mediator 2012-02-22 16:18:38