У меня есть ApiController так:ApiController маршрутизации с несуществующими параметрами
SearchController : ApiController {
public Book Get(int booksn=-1, string author="")
{
/* search for books matching the parameters */
}
}
Все параметры по умолчанию имеют значение и запрос пустой поиск возвращает все.
Теперь моя проблема заключается в том, что если запрос содержит другие параметры (например, опечатка от пользователя API) он будет по-прежнему путь к этой функции:
GET /search?booksn=3&hello=world
Основная проблема заключается в том, что если параметр передается с неправильный тип он будет перенаправлять так же, как и я не буду получать значение параметра в методе, так что я даже не могу отправить ошибочный ответ:
GET /search?booksn=helloWorld
есть ли способ, чтобы предотвратить это? Либо предотвратить неправильные типы, либо предотвратить все неопределенные параметры? (я также попытался с объектом и [FromUri] атрибут, но та же проблема)
Edit: Я использую VS 2012 с платформы .NET 4
Спасибо, но атрибут маршрутизации, по-видимому, доступен с VS 2013. Я использую VS 2012 и .NET framework 4. Я обновлю свой вопрос. – aymeric
О, я не знал об этом – Charlie