If I decorate this web api controller with the Route attribute I can hit the method
[Route("api/v{version}/bank-accounts")]
public class BankAccountsController : ApiController
{
[HttpGet]
public HttpResponseMessage GetBankAccounts()
{
//...
}
}
But if I use RoutePrefix instead I can't make it work unless at the same time I use Route("")
[RoutePrefix("api/v{version}/bank-accounts")]
public class BankAccountsController : ApiController
{
[HttpGet]
[Route("")]
public HttpResponseMessage GetBankAccounts()
{
//...
}
}
Is this intended, or I'm messing things?
Thanks
是的,这是预期的行为...... RoutePrefix
属性本身不会向路由表添加任何路由,而Route
属性会......
You are missing it... The route prefix, is just that, a prefix. You should move part of the path template to the route attribute. Like this.
[RoutePrefix("api/v{version}")]
public class BankAccountsController : ApiController
{
[HttpGet]
[Route("bank-accounts")]
public HttpResponseMessage GetBankAccounts(string version)
{
//...
}
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.