title: How to omit controller name for Home views
body: <p>Let's say I have this structure:</p>
  
  <pre><code>Home/
      Index
      About
  
  Project/
      Index
      Details
  </code></pre>
  
  <p>How can I omit the controller name for Home views?</p>
  
  <p>I want to write <code>{root}/About</code> instead of <code>{root}/Home/About</code>.<br>
  I also want <code>{root}/Project/Details/2</code> to work.</p>
  
  <p>Here is what I tried in <code>RegisterRoutes</code>:</p>
  
  <pre><code>routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
  
  routes.MapRoute(
      name: "DefaultRoute",
      url: "{controller}/{action}/{id}",
      defaults: new
      {
          controller = "Home",
          action = "Index",
          id = UrlParameter.Optional
      }
  );
  
  routes.MapRoute(
      name: "HomeRoute",
      url: "{action}",
      defaults: new
      {
          controller = "Home",
          action = "Index"
      }
  );
  </code></pre>
  
  <p><strong>Edit:</strong> I also tried swapping the order of my <code>MapRoute</code> calls but it still doesn't work.<br>
  What I need is:</p>
  
  <pre><code>{root}/Home/Index         &gt; HomeController.Index
  {root}/Home               &gt; HomeController.Index
  {root}                    &gt; HomeController.Index
  {root}/Home/About         &gt; HomeController.About
  {root}/About              &gt; HomeController.About
  {root}/Project/Index      &gt; ProjectController.Index
  {root}/Project            &gt; ProjectController.Index
  {root}/Project/Details/12 &gt; ProjectController.Details
  </code></pre>