Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using WebApi RoutePrefix attribute on a base controller

I would like all controllers which inherit from AdminBaseApiController to be prefixed with 'admin'.

This works fine of course:

[RoutePrefix("admin")]
public class ToggleController : AdminBaseApiController
{
    [Route("toggle")]
    public HttpResponseMessage Get()
    {
    }
}

However when I move the RoutePrefix("admin") out of the ToggleController and into the AdminBaseApiController (where I want it) - The route fails and I get a 404.

Am I looking at this all wrong? Thanks in advance!

like image 801
Marc Costello Avatar asked Sep 06 '25 19:09

Marc Costello


1 Answers

Support for inheritance has been enabled in Web API 2.2 release...You can take a look at an example in the following Release Notes:

http://www.asp.net/web-api/overview/releases/whats-new-in-aspnet-web-api-22#ARI

like image 133
Kiran Avatar answered Sep 08 '25 08:09

Kiran