ASP.NET MVC 3 Routes Always Have Querystring Value "Area="
===

This is an annoyance that I've experienced for a long time, but now my client is asking me to address it.

In every route that gets generated (by a non-Default route), a query string value gets appended: "`Area=`"

As an example:

	// RouteConfig.Register():
	routes.MapRoute(
		"ProfileDetails",
		"{slug}",
		new { controller = "Profile", action = "Details" }
	);

	routes.MapRoute(
		"Default",
		"{controller}/{action}/{id}",
		new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
	);


To generate a URL to the `BadgeController.Index` action, the Default route will be applied and the result will be `/Badge`... and that's what is expected.

But to generate a URL to the `ProfileController.Details(someUser)` action, the ProfileDetails route will be applied and the result will be `/someUser?Area=` ... which will work, but the `?Area=` is unnecessary and messy.

I have no areas in my project. How do I get rid of that `Area=` query string value? This happens with all of my routes that are not the predefined Default route, not just the "ProfileDetails" one in this example.

I've tried removing the `AreaRegistration.RegisterAllAreas()` from my Global.asax file, since I assume it's not required.