title: No action was found on the controller that matches the request
body: <p>Please excuse my ignorance in this area. I have read many threads and still cannot get my routing correct.</p>
  
  <p>I have a ProductsController like this:</p>
  
  <pre><code>public class ProductsController : ApiController
  {
      [ActionName("GetListOfStudents")]
      public static List&lt;Structures.StudentInfo&gt; GetListOfStudents(string Username, string Password)
      {
          List&lt;Structures.StudentInfo&gt; si = StudentFunctions.GetListOfStudents(Username, Password);
          return si;
      }
  }
  </code></pre>
  
  <p>I have a console test program where I have defined the route:</p>
  
  <pre><code>config.Routes.MapHttpRoute(
  name: "ApiByAction",
  routeTemplate: "api/products/GetListOfStudents",
  defaults: new { controller = "products", action = "GetListOfStudents" });
  </code></pre>
  
  <p>But when I run call</p>
  
  <pre><code>GET http://localhost:8080/api/Products/GetListOfStudents
  </code></pre>
  
  <p>I get the error message:</p>
  
  <pre><code>MessageDetail=No action was found on the controller 'Products' that matches the name 'GetListOfStudents'.
  </code></pre>
  
  <p>I have been pulling my hair out and cannot work out what the correct route should be.</p>
  
  <p>Would any kind person care to help me out?</p>