title: How to pass values by POST in ASP.NET MVC 4
body: <p>I have problem with passing values by POST in ASP.NET MVC 4 
  This is my action in User controller:</p>
  
  <pre><code>[HttpPost]
  public string Show(int? uid, string uname)
  {
      return uname + uid.ToString();
  }
  </code></pre>
  
  <p>And this is how I tried to pass values in view:</p>
  
  <pre><code>@using (Html.BeginForm("Show", "User"))
  {
      Html.Hidden("uid", Model.Id);
      Html.Hidden("uname", Model.UserName);
      &lt;input type="submit" value="+"/&gt;
  }
  </code></pre>
  
  <p>html:</p>
  
  <pre><code> &lt;form action="/User/Show" method="post"&gt; &lt;input type="submit" value="+"/&gt; &lt;/form&gt;
  </code></pre>
  
  <p>and:</p>
  
  <pre><code>@using(Html.BeginForm("Show", "User", FormMethod.Post, new { uid = 1, uname = "user1" }))
  {
      &lt;input type="submit" value="+"/&gt;
  }
  </code></pre>
  
  <p>html:</p>
  
  <pre><code>&lt;form action="/User/Show" method="post" uid="1" uname="user1"&gt; &lt;input type="submit" value="+"/&gt;&lt;/form&gt;
  </code></pre>
  
  <p>In both ways Show action receives null instead real values.</p>