TL;TD I've created a new WebApi2 Application and removed all the default MVC guff so just WebApi guff remains. Why isn't it working.
I've created a Web Api 2 project and don't need any non Web Api functionality so I removed it prior to creating my WebApi route and controller. No matter how I try to access it, I cant hit my new web api controller action. Code snippets below;
Global.asax
public class WebApiApplication : HttpApplication
{
protected void Application_Start()
{
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
}
}
WebApiConfig.cs
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "{controller}/{action}/{id}"
);
}
}
TestController.cs
public class TestController : ApiController
{
public IEnumerable<TestItem> Get()
{
var updates = new List<TestItem>()
{
new TestItem()
{
Title = "Testing Testing",
Content = "Testing Content",
Date = DateTime.Now
}
};
return updates;
}
}
Project Structure
- App_Start
- FilterConfig.cs
- WebApiConfig.cs
- Controllers
- TestController.cs
- Models
- TestItem.cs
- Global.asax
I am completely at a loss, I'm sure I've missed something obvious.