title: asp.net mvc HttpPost call with RedirectToAction is not working. Passing in null model back to HttpGet method
body: <p>I have a question about <code>HttpGet</code> and <code>HttpPost</code> methods in ASP.NET MVC.</p>
  
  <p>I have two <code>HttpGet</code> method. The <code>Product()</code> is first called when entering the page for the first time.
  I have a form to submit changes to the database. I want to call the <code>Products(MyModel updatedmodel)</code>
  with <code>RedirectToAction</code> like <code>RedirectToAction("Products", model)</code> but it does not call that method. I
  have a breakpoint in the overloaded <code>HttpGet</code> call but the overload method never gets called.</p>
  
  <pre><code>[HttpGet]
  public ActionResult Products()
  {
      // first call 
  }
  
  [HttpGet]
  public ActionResult Products(MyModel updatedmodel)
  {
  
  }
  </code></pre>
  
  <p>The page loads with a form. I hit the select button and it calls the <code>HttpPost</code> method</p>
  
  <pre><code>[HttpPost]
  public ActionResult SendChanges(MyModel model)
  {
  if (ModelState.IsValid)
  {
      // call database
      MyModel updatedmodel = send
       return RedirectToAction("Products", model);
  }
  
   return View("Products", model);
  
  }
  </code></pre>
  
  <p>Next I changed to only 1 <code>HttpGet</code> call with the overloaded model parameter like so. The <code>RedirectToAction</code> does call
  that 1 <code>HttpGet</code> method but the model is null with the <code>RedirectToAction("Products", model)</code> call. </p>
  
  <p>Why is the model null if I call with <code>RedirectToAction("Products", model)</code> call? How can I fix it?</p>
  
  <pre><code>[HttpGet]
  public ActionResult Products(MyModel updatedmodel)
  {
  
  }
  
  
  [HttpPost]
  public ActionResult SendChanges(MyModel model)
  {
  if (ModelState.IsValid)
  {
      // call database
      MyModel updatedmodel = send
       return RedirectToAction("Products", model);
  }
  
   return View("Products", model);
  
  }
  </code></pre>