title: Controllers in subfolders ASP.Net MVC 4
body: <p>In my ASP.Net MVC 4 project, I have a controllers in a sub-folder in controller folder-</p>
  
  <pre><code>/Controllers
      /GroupA
          /AbcController.cs
  </code></pre>
  
  <p>In AbcController, i have two methods-</p>
  
  <pre><code>    public ActionResult Index()
      {
          return View();
      }
  
      public ActionResult Edit(string value)
      {
          ViewBag.Message = value;
          return View();
      }
  </code></pre>
  
  <p>RouteConfig.cs -</p>
  
  <pre><code>    public static void RegisterRoutes(RouteCollection routes)
      {
          routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
  
          routes.MapRoute(
              name: "TestRoute",
              url: "GroupA/{controller}/{action}/{id}",
              defaults: new { controller = "AbcController", action = "Index", id = UrlParameter.Optional }               
          );
  
          routes.MapRoute(
              name: "Default",
              url: "{controller}/{action}/{id}",
              defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
          );
      }
  </code></pre>
  
  <p>but when i browse <code>http://localhost:2240/groupa/abc/edit/somevalue</code></p>
  
  <p>, 'somevalue' is not passed to the method. It shows null.</p>
  
  <p>What i am missing here?</p>