MVC4 ActionLink without parameters points to current path
<p>I have a MVC4 Index page that have the following links:</p>

<pre><code>@Html.ActionLink("FOO", "Index", "Mil", new { year = String.Empty, id = String.Empty }, null)
@Html.ActionLink("BAR", "Index", "Euro", new { year = String.Empty, id = String.Empty }, null)
</code></pre>

<p>But oddly both turn into a hyperlink to the <em>CURRENT</em> path (i.e. if we are at <strong>domain/Euro/2016/1</strong> both link to this address), instead of pointing to the specified controller.</p>

<p>Everything normal in <strong>RouteConfig</strong>:</p>

<pre><code>routes.MapRoute(
             name: "Default",
             url: "{controller}/{year}/{id}",
             defaults: new { controller = "Home", action = "Index", year = UrlParameter.Optional, id = UrlParameter.Optional }
         );
</code></pre>

<p>The Controllers/Actions exist and work fine:</p>

<p><strong>EuroController</strong>:</p>

<pre><code>public ActionResult Index(int? year, int? id)
 {
    ...
 }
</code></pre>

<p>What can be causing this odd behavior?</p>

<p><strong>EDIT:</strong></p>

<p>If i pass year parameter, works fine: <code>@Html.ActionLink("FOO", "Index", "Mil", new { year = 666, id = String.Empty }, null)</code> correctly points to <strong>domain/Mil/666</strong>.</p>