다음 WebAPI 메소드를 구현해야합니다.
/api/books?author=XXX&title=XXX&isbn=XXX&somethingelse=XXX&date=XXX
모든 쿼리 문자열 매개 변수는 null 일 수 있습니다. 즉, 호출자는 0에서 5 개의 매개 변수를 모두 지정할 수 있습니다.
MVC4 베타 에서는 다음을 수행했습니다.
public class BooksController : ApiController
{
// GET /api/books?author=tolk&title=lord&isbn=91&somethingelse=ABC&date=1970-01-01
public string GetFindBooks(string author, string title, string isbn, string somethingelse, DateTime? date)
{
// ...
}
}
MVC4 RC는 더 이상이 동작을하지 않습니다. 5 개 미만의 매개 변수를 지정하면 다음과 같이 응답합니다 404
.
컨트롤러 '도서'에서 요청과 일치하는 조치가 없습니다.
URL 라우팅에서 선택적 매개 변수를 지정하지 않고 이전과 같이 동작하도록하는 올바른 메소드 서명은 무엇입니까?
Get
으로 자동으로 바인딩됩니다 HTTP GET
...
string?
유효한 유형이 아닙니다. string
참조 유형이므로 널 입력 가능 유형으로 선언 할 수 없습니다 .