title: ASP.NET MVC How to correctly map a parameter in url-routing
body: <p>I have the following route</p>
  
  <pre><code>        routes.MapRoute(
              "Segnalazioni_CercaSegnalazioni",
              "Segnalazioni/CercaSegnalazioni/{flag}",
              new { controller = "Segnalazioni", action = "CercaSegnalazioni", flag = 7 }
          );
  </code></pre>
  
  <p>that maps to the following methon of the class SegnalazioniController:</p>
  
  <pre><code>    public ActionResult CercaSegnalazioni(int flag)
      {
          ViewData["collezioneSegnalazioni"] = Models.Segnalazioni.Recupera(flag);
          System.Xml.Linq.XElement x = (System.Xml.Linq.XElement)ViewData["collezioneSegnalazioni"];
          return View("Index");
      }
  </code></pre>
  
  <p>How come the link <code>http://localhost:1387/Segnalazioni/CercaSegnalazioni/1</code> gives me the error</p>
  
  <pre><code>The parameters dictionary contains a null entry for parameter 'flag' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult CercaSegnalazioni(Int32)' in 'RecuperoPagatiMvc.Controllers.SegnalazioniController'. To make a parameter optional its type should be either a reference type or a Nullable type.
  Nome parametro: parameters 
  </code></pre>