Я хочу использовать глобальный фильтр проверки модели для всех моих контроллеров в приложении ASP.NET 5.
Но я столкнулся с проблемой, заключающейся в том, что средство связывания по умолчанию не заполняет значения модели из URI (но работает нормально для действий POST с поддержкой телодвижений) ). Например, у меня есть контроллер с действием:
public class TestController : ApiController
{
[HttpGet, Route("test/{id}"/return)]
public int TestAction([FromUri] TestModel model)
{
return model.Id;
}
public class TestModel
{
[Required]
public int? Id { get; set; }
}
}
Запрос этого контроллера по URI, например, localhost:12345/test/10/return
, возвращая нулевой ответ. То же самое для других сложных моделей, при доступе к некоторым из отмеченных [Обязательных] полей выбрасывается NRE, как связыватель игнорирует выражение {id} в маршруте.
Есть идеи, где можно отключить это поведение?