So – you’ve tried everything and you’re still getting weird 404 errors in asp.net web api 2. You’ve tried the 4 main ways of fixing it, and you still get nothing – that was what I did anyway. Finally I started a new project in the solution, and noticed that the problem only occured when other projects were referenced – and that I had several duplicate controller names.
I.E. Project A had and “AjaxController” and Project B had an “AjaxController”. Everything works fine until you reference Project A from Project B – if you change the name of the controller in Project B the problem goes away and everything works perfectly.