Question: In my MVC application, when user goes to www.MyDomain.com/Home, this request is processed in HomeController class Index method due to following routing entry in Global.asax

```
routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

```

Let's say if user goes to **www.MyDomain.com/SomeParameters**, I want this request to be processed in MyController class Index method. An example for the parameters will be www.MyDomain.com/John. For this I have created following entry in Global.asax but it does not seem to get hit. Can anyone point out what I am doing wrong here?

```
routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "MyController", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

```

Answer: 
The routing handles *John* as the controller, not the action. So in your example *John* is the controller and because you don't provide an action, it takes *Index* as the default action.

If you want www.MyDomain.com/John to be routed to controller MyController, action Index and a parameter that contains John, a solution could be to add the following route (before the default route):

```
routes.MapRoute(
   name: "MyController",
   url: "{myparameter}",
   defaults: new { Controller = "MyController", Action = "Index" });

```

And the controller:

```
public ActionResult Index(string myparameter)
{
    return View("whatever"); 
}

```

This will lead www.MyDomain.com/John to the Index action with myparameter = "John". 

ps. In the example *myparameter* is mandatory.
In order to have www.MyDomain.com/SomeParameters you simply need to create a route where the Controller and the Action method are defaulted since they will not be provided in the URL. 

Make sure the route definition only includes the `someparameters` and does not have anything else. This way you can just treat anything in the URL after `/` as a parameter.

```
routes.MapRoute(
   name: "MyController",
   url: "{someparameters}",
   defaults: new { Controller = "MyController", Action = "Index" });

public ActionResult Index(string someparameters)
{
    ...

    return View(); 
}

```