Почему вы хотите создать свое меню в application_start? Это для какого-то кеширования? Во всяком случае здесь идет ..
RegisterRoutes(RouteTable.Routes);
var httpContext = new HttpContextWrapper(HttpContext.Current);
UrlHelper urlHelper = new UrlHelper( new RequestContext(httpContext, new RouteData()));
var urlToHome = urlHelper.RouteUrl("Home");
Я бы порекомендовал сделать RenderAction на главной странице, что указывает на кэшируемое действие или что-то в этом роде.