I added one Api controller to my MVC project. And made following changes:
My WebApiConfig
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "GetFirms",
routeTemplate: "api/B2bApi/GetFirms",
defaults: new { controller = "B2bApiController", action= "GetFirms" });
}
}
I register this route in Global.asax (Last line)
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
GlobalConfiguration.Configure(WebApiConfig.Register);
}
I checked in debugged and saw that my routes are registered. So here is my controller:
public class B2bApiController : ApiController
{
[HttpGet]
public string GetFirms()
{
return "test";
}
}
When i navigate to
/api/B2bApi/GetFirms
i'm getting
404 error
.
What is the correct way to register api routes?
