It's been a while since you posted this, but I think I have an answer. Firstly, there are two questions. First, as Pinback noted, you cannot use the same route for two different endpoints.
However, if you simply exclude the int method, you will still run into a problem. Remember: the default route looks like this: api / {controller} / {id} To bind a parameter, you need to call it "id", not "test".
Change the signature to this:
public IHttpActionResult GetString(string id)
and it will work. (you can also change {id} to {test} in the webapiconfig.cs file).
source share