title: ASP.NET MVC change default route
body: <p>I want my ASP.NET MVC application to redirect to Product controller index action by default. So I changed RouteConfig to </p>
  
  <pre><code>public class RouteConfig
      {
          public static void RegisterRoutes(RouteCollection routes)
          {
              routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
  
              routes.MapHttpRoute(
                  name: "DefaultApi",
                  routeTemplate: "api/{controller}/{id}",
                  defaults: new { id = RouteParameter.Optional }
              );
  
              routes.MapRoute(
                  name: "Default",
                  url: "{controller}/{action}/{id}",
                  defaults: new { controller = "Product", action = "Index", id = UrlParameter.Optional });
          }
  </code></pre>
  
  <p>But still I am getting the error </p>
  
  <pre><code>The view 'Index' or its master was not found or no view engine supports the searched locations. 
  The following locations were searched: 
  ~/Views/Home/Index.aspx 
  ~/Views/Home/Index.ascx 
  ~/Views/Shared/Index.aspx 
  ~/Views/Shared/Index.ascx 
  ~/Views/Home/Index.cshtml 
  ~/Views/Home/Index.vbhtml 
  ~/Views/Shared/Index.cshtml 
  ~/Views/Shared/Index.vbhtml
  </code></pre>
  
  <p>I debugged the application and checked the Defaults section of the third route. But it still says </p>
  
  <p><code>{[controller, Home]}</code>
  Can anyone tell me why? </p>