I'm using a standard MVC 3 Web Project and I've written my HTML out in a standard HTML file, and then copy/pasted it into the \_layout.cshtml file. With all the correct RenderBody() and @Html.Partial("\_LogOnPartial") included the page works fine, but the ActionLink inside the \_LogOnPartial doesn't render an href.

```
Html.ActionLink("Log On", "LogOn", "Account")

```

Will come out as:

```
<a href="">Log On</a>

```

This is unchanged from the standard link that you get when you start an MVC 3 Web project.

The registered Routes are:

```
 public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default", // Route name
            "{controller}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
        );

        routes.MapRoute(
            "Products",
            "{controller}/{action}/{id}",
            new {controller = "Products", action = "Index"});

        routes.MapRoute(
        "Newsletter",
        "{controller}/{action}/{emailAddress}",
        new { controller = "Newsletter", action = "Index" });

        routes.MapRoute(
       "Account",
       "{controller}/{action}/{id}",
       new { controller = "Account", action = "LogOn", id = UrlParameter.Optional });

    }

```

I don't understand why this is happening, but in Visual Studio it is not underlining the Action or Controller which makes me think it isn't seeing the AccountController properly. Anyone got any ideas?