У меня возникли проблемы с проектом WebAPI, использующим MVC5 и маршрутизацию атрибутов.
По сути, это то, что я хочу сделать:
[Route("Products/{CategoryId}")]
[ClaimsAuthorize([{CategoryId}], ClaimsEnum.CanViewProducts)]
public Products Get(){
...
}
Где [{CategoryId}] — это место, где я хочу передать CategoryId обработчику атрибутов. Обработчик CustomAttribute выглядит так:
public ClaimsAuthorizeAttribute(string CategoryId, params ClaimsEnum[] requiredClaimTypes)
Где ClaimsAuthorize — это настраиваемый атрибут, переопределяющий атрибут Authorize.
Как я могу получить доступ к параметру CategoryId из пользовательского атрибута? Это возможно? Или есть другой способ передать его обработчику атрибута?
Это псевдокод, но описывает мою проблему. Мне нужно знать категорию, которая передается с URL-адресом запроса при обработке авторизации. Я знаю, что могу использовать заголовки, но я хочу, чтобы все было видно в URL, если это возможно.
Спасибо :)