Есть ли способ сделать атрибуты, указанные в маршруте, доступными для всего класса?Например, рассмотрим этот контроллер:
[Route("api/store/{storeId}/[controller]")]
public class BookController
{
[HttpGet("{id:int:min(1)}")]
public async Task<IActionResult> GetBookById(int storeId, int id)
{
}
}
И этот запрос:
/api/store/4/book/1
Внутри метода GetBookById переменная storeId правильно заполнена значением 4, а переменная id - значением 1. Однаковместо того, чтобы передавать переменную storeId в каждом методе BookController, есть способ сделать что-то вроде этого:
[Route("api/store/{storeId}/[controller]")]
public class BookController
{
private int storeId;
[HttpGet("{id:int:min(1)}")]
public async Task<IActionResult> GetBookById(int id)
{
//use value of storeId here
}
}