title: ReturnUrl in asp.net mvc is null for some reason
body: <pre><code>public ActionResult LogOn(string returnUrl)
          {
              if (Request.IsAuthenticated)
              {
                  return RedirectToAction(string.Empty, "home");
              }
              else
              {
                  if (!string.IsNullOrWhiteSpace(returnUrl))
                  {
                 //http://localhost:666/en-us/account/logon?returnurl=%2fen-us%2fadminka
                       //..............
                  }
                  return View();
  
              }
          }
  
          [HttpPost]
          public ActionResult LogOn(LogOnViewModel model, string returnUrl)
          {
              if (ModelState.IsValid)
              {
                  if (....)
                  {
                      //..............
                      if (Url.IsLocalUrl(returnUrl) &amp;&amp; returnUrl.Length &gt; 1 &amp;&amp; returnUrl.StartsWith("/")
                          &amp;&amp; !returnUrl.StartsWith("//") &amp;&amp; !returnUrl.StartsWith("/\\"))
                          return Redirect(returnUrl);
                      return RedirectToAction(string.Empty, "home");
  
                  }
                  else
                  {
                      //..............
                  }
              }
  
              return View(model);
          }
  </code></pre>
  
  <p>In <code>HttpPost LogOn</code> <code>returnUrl</code> is always equals null, even if it was <strong>not</strong> null in <code>HttpGet LogOn</code>.</p>
  
  <p>Why? How do I fix it?</p>