I am running into a problem when I call /api/something/67545217-0fed-4058-9cfc-f6363412f5a2. It calls the get all. The other Get's work, but I think it is because they use the {action} in the url. And I am using the [ActionName] decorator. 

Here is my routing:

```
public static void Register(HttpConfiguration config)
    {
        // enable CORS
        config.EnableCors();
        config.Services.Replace(typeof(IHttpControllerSelector), new ControllerSelector(config));

        // enable OData Queries
        // http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/supporting-odata-query-options
        config.EnableQuerySupport();

        // http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/odata-actions
        var builder = new ODataConventionModelBuilder();
        builder.EntitySet<Survey>("Survey");

        config.Routes.MapODataRoute("odata", "odata", builder.GetEdmModel());

        // Web API routes
        config.MapHttpAttributeRoutes();
        config.Routes.MapHttpRoute(
            "DefaultApi", 
            "api/{controller}/{actionuniqueid}", 
            new 
            { 
                actionuniqueid =
                    @"^[A-Fa-f0-9]{32}$|({|\()?[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}(}|\))?$|^({)?[0xA-Fa-f0-9]{3,10}(, {0,1}[0xA-Fa-f0-9]{3,6}){2}, {0,1}({)([0xA-Fa-f0-9]{3,4}, {0,1}){7}[0xA-Fa-f0-9]{3,4}(}})$"
            });

        // Match All Regular Get Calls
        config.Routes.MapHttpRoute("DefaultController", "api/{controller}");

        config.Routes.MapHttpRoute(
            "DefaultApiActionId",
            "api/{controller}/{action}/{actionuniqueid}",
            null,
            new
            {
                action = @"^[a-zA-Z]+([\s][a-zA-Z]+)*$",
                actionuniqueid =
                    @"^[A-Fa-f0-9]{32}$|({|\()?[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}(}|\))?$|^({)?[0xA-Fa-f0-9]{3,10}(, {0,1}[0xA-Fa-f0-9]{3,6}){2}, {0,1}({)([0xA-Fa-f0-9]{3,4}, {0,1}){7}[0xA-Fa-f0-9]{3,4}(}})$"
            });
        config.Routes.MapHttpRoute(
            "DefaultApiTwoActionId",
            "api/{controller}/{action}/{actionuniqueid}/{actionsecondaryid}",
            null,
            new
            {
                action = @"^[a-zA-Z]+([\s][a-zA-Z]+)*$",
                actionuniqueid =
                    @"^[A-Fa-f0-9]{32}$|({|\()?[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}(}|\))?$|^({)?[0xA-Fa-f0-9]{3,10}(, {0,1}[0xA-Fa-f0-9]{3,6}){2}, {0,1}({)([0xA-Fa-f0-9]{3,4}, {0,1}){7}[0xA-Fa-f0-9]{3,4}(}})$",
                actionsecondaryid =
                    @"^[A-Fa-f0-9]{32}$|({|\()?[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}(}|\))?$|^({)?[0xA-Fa-f0-9]{3,10}(, {0,1}[0xA-Fa-f0-9]{3,6}){2}, {0,1}({)([0xA-Fa-f0-9]{3,4}, {0,1}){7}[0xA-Fa-f0-9]{3,4}(}})$"
            });
    }

```

Here are all my gets...when I call the controller, with only the ID...the correct path is not being called. Is it because it has the same setup as by type?

```
public class TestController : ApiController
{
    [Queryable]
    [ResponseType(typeof(Test))]
    public IQueryable<Test> Get(ODataQueryOptions opts)
    {
        IEnumerable<Test> test= (new Test()).PullList<Test>(LoadDepth.Self, "ByAll");
        IQueryable results = test.AsQueryable();
        return opts.ApplyTo(results) as IQueryable<Test>;
    }
    [HttpGet]
    [Queryable]
    [ActionName("ById")]
    [ResponseType(typeof(Test))]

    public IQueryable<Test> Get(ODataQueryOptions opts, Guid actionuniqueid)
    {
        IEnumerable<Test> test = (new Test()).PullList<Survey>(
                LoadDepth.Everything, 
                "ById",
                actionuniqueid);
        IQueryable results = test.AsQueryable();
        return opts.ApplyTo(results) as IQueryable<Test>;
    }

    [HttpGet]
    [ActionName("ByType")]
    [ResponseType(typeof(Test))]
    public IQueryable<Test> GetByType(ODataQueryOptions opts, Guid actionuniqueid)
    {
        IEnumerable<Test> survey = (new Test()).PullList<Survey>(
            LoadDepth.Everything,
            "ByType",
            actionuniqueid);
        IQueryable results = test.AsQueryable();
           return opts.ApplyTo(results) as IQueryable<Test>;
    }

```