Пользовательский RouteContraint с IOptions
Есть ли способ передать IOptions в пользовательский IRouteConstraint? Я пытаюсь проверить appsetting, чтобы увидеть, нужен ли мне определенный маршрут или нет.
1 ответ
Решение
Не могу найти никаких ссылок в данный момент, но
- либо он работает, когда вы передаете его в конструктор (я полагаю, вы пробовали это, и это не сработало)
- получить это от
HttpContext
, который передается вMatch
метод
Пример:
public class MyConstraint : IRouteConstraint
{
public bool Match(HttpContext httpContext, IRouter route, string routeKey, RouteValueDictionary values, RouteDirection routeDirection)
{
var options = httpContext.RequestServices.GetService<IOptions<MySettings>>();
return ...;
}
}