title: URL Routing: How do I have a string as my id?
body: <p>I would like to receive a string as the id in the URL. Here is an example:</p>
  
  <pre><code>http://www.example.com/Home/Portal/Fishing
  </code></pre>
  
  <p>I would like to have Fishing in my id. But I cannot achieve it with the following code:</p>
  
  <p>Code from my Controller:</p>
  
  <pre><code>public ActionResult Portal(string name)
  {
      // some code
      ViewData["Portal Name"] = name;
  }
  </code></pre>
  
  <p>Code from Global.asax.cs:</p>
  
  <pre><code>  routes.MapRoute(
    "Default", // Route name
    "{controller}/{action}/{id}", // URL with parameters
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
    );
  </code></pre>