2014-01-24 3 views
2
나는 WebApiConfig에 정의 된 경로를 가지고

:웹 API 광고 변수 매개 변수

config.Routes.MapHttpRoute(name: "dav", routeTemplate: 
"api/values/{*file}", defaults: new { controller = "Values", action = 
"Get" }); 

{* 파일} 경로 템플릿의 부분은 매개 변수의 수는 가변 것을 정의한다. 이 내용은 MSDN에 문서화되어 있습니다. 이 방법은 얻기 URI http://[mymachine]/api/values/1/1/2/3/ 안타를 실행하면

[AcceptVerbs("GET")] 
[ActionName("Get")] 
public HttpResponseMessage Get(param string[] file) 
{} 

:

액션 가져 오기와 컨트롤러를 얻었다. file 배열 만 비어 있습니다. 404

어떤 아이디어에

public HttpResponseMessage Get(string[] file) 

그리고

public HttpResponseMessage Get(string file) 

모두 끝 :

또한 같은 일반적인 시도?

+2

'FromUri' 속성을 해당 조합에 대한'file' 매개 변수에 적용 해 보았습니까? –

+0

@Damien_The_Unbeliever 그 일을했습니다! Excellent –

+1

어둠 속에서 야생 찔렀다. 스펙이 실제로 작동하는지 알지 못했다. 작업 솔루션을 * 답변 *으로 게시하고 (문제의 맨 아래에 넣는 것이 아니라) 받아 들인 것으로 표시해야합니다 (이 작업을하기 위해 조금 기다려야합니다, IIRC). 그런 식으로 사람들은 당신이 문제를 풀었고 더 많은 도움을 필요로하지 않는다는 것을 알고 있습니다. –

답변

2

From 속성을 추가하면 문제가 해결됩니다.

@Damien_The_Unbeliever에게 감사드립니다.