title: How to distinguish query parameters from path parameters
body: <p>I want to have to GET methods on my api, one with the Route with path parameters: </p>
  
  <blockquote>
    <p>api/people/{personId}</p>
  </blockquote>
  
  <p>and one with the Route with query parameters:</p>
  
  <blockquote>
    <p>api/people?text=something</p>
  </blockquote>
  
  <p>but if i put this code:</p>
  
  <pre><code>// GET: api/people/{personId}
  [Route("api/people/{personId}")]
  [HttpGet]
  public HttpResponseMessage Get(long personId)
  {
  }
  
  // GET: api/people?text=something
  [Route("api/people")]
  [HttpGet]
  public HttpResponseMessage Get(string text)
  {
  }
  </code></pre>
  
  <p>And then try to open <em>/api/people/1</em> it says wrong format and when I try to open <em>/api/people?text=something</em> it works.</p>
  
  <p>I only have the default route defined:</p>
  
  <pre><code>    config.Routes.MapHttpRoute(
          name: "DefaultApi",
          routeTemplate: "api/{controller}/{id}",
          defaults: new { id = RouteParameter.Optional }
      );
  </code></pre>
  
  <p>How can I have them both working? Define that if it's a path parameter go to the first one and if it's a query parameter go to second on?</p>