Привязка модели ASP.Net Web API работает не так, как в MVC 3
У меня сложилось впечатление, что связывание модели в ASP.Net Web API должно поддерживать связывание с тем же минимальным уровнем функциональности, который поддерживается MVC.
Возьмите следующий контроллер:
public class WordsController : ApiController
{
private string[] _words = new [] { "apple", "ball", "cat", "dog" };
public IEnumerable<string> Get(SearchModel searchSearchModel)
{
return _words
.Where(w => w.Contains(searchSearchModel.Search))
.Take(searchSearchModel.Max);
}
}
public class SearchModel
{
public string Search { get; set; }
public int Max { get; set; }
}
Я запрашиваю это с помощью:
http://localhost:62855/api/words?search=a&max=2
К сожалению, модель не связывается, как в MVC. Почему это не является обязательным, как я ожидал? У меня в приложении будет много разных типов моделей. Было бы хорошо, если бы привязка просто работала, как это происходит в MVC.