title: Web API 2 Custom Controller method. Routing issue
body: <p>Here is my Global.asmx</p>
  
  <pre><code>public class WebApiApplication : System.Web.HttpApplication
  {
      protected void Application_Start()
      {
          GlobalConfiguration.Configure(WebApiConfig.Register);            
      }
  }
  </code></pre>
  
  <p>Here is my WebApiConfig class. </p>
  
  <pre><code>public static class WebApiConfig
  {
      public static void Register(HttpConfiguration config)
      {
          // Web API configuration and services
  
          // Web API routes
          config.MapHttpAttributeRoutes();
  
          config.Routes.MapHttpRoute(
              name: "DefaultApi",
              routeTemplate: "api/{controller}/{action}/{id}",
              defaults: new { id = RouteParameter.Optional }
          );
      }
  }
  </code></pre>
  
  <p>Here is my ApiController</p>
  
  <pre><code>public class HelloController : ApiController
  {
      public string Get()
      {
          return "get method";
      }
  
      [Route("SayHello")]
      public string SayHello()
      {
          return "Hello Jim";
      }
  }
  </code></pre>
  
  <p>If I browse to <code>http://localhost:52072/api/hello/get</code> then I will receive back "get method" as expected. </p>
  
  <p>If I browse to <code>http://localhost:52072/api/hello/SayHello</code> then it errors with a <code>404 not found</code>. </p>
  
  <p>Any ideas?</p>