title: The parameters dictionary contains a null entry for parameter... mvc
body: <p>I put my view and controller in here, my problem is after when posting value I got this error:</p>
  
  <blockquote>
    <p>The parameters dictionary contains a null entry for parameter 'id' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult DeleteQuestionDo(Int32)' in 'Landing.UI.Areas.cpanel.Controllers.BestDestinationResultController'. An optional parameter must be a reference type, a nullable type, or be declared as an optional parameter.
    Parameter name: parameters</p>
  </blockquote>
  
  <p>Controller:</p>
  
  <pre><code>[HttpPost]
  public ActionResult DeleteQuestionDo(int id)
  {
      Logic.BestDestination.BestDestinationLogic bestDestLigic = new Logic.BestDestination.BestDestinationLogic();
      bestDestLigic.deleteQuestion(id);
      return RedirectToAction("DeleteQuestion");
  }
  </code></pre>
  
  <p>view:</p>
  
  <pre><code>@model Landing.UI.Areas.cpanel.Models.BestDestinationQuestionList
  ....
  @Html.BeginForm("DeleteQuestionDo", "BestDestinationResult", FormMethod.Post)
  {
      @foreach (var m in Model.BestDestQuesList)
      {
          &lt;input type="hidden" name="@m.QuestionId" /&gt;
          &lt;br /&gt;
          &lt;a href="@Url.Action("DeleteQuestionDo", "BestDestinationResult", new { id = m.QuestionId })"&gt;@m.Question&lt;/a&gt;
          &lt;input name="@m.QuestionId" type="submit"  value="حذف کامل سؤال"  /&gt;
      }
  }
  </code></pre>