2012-03-26 4 views
0

WebApi의 json/xml 응답을 모델 유형에 바인딩하는 방법은 무엇입니까? 마치 모델 사용자가 있고 내 api가 json/xml 형식의 사용자 목록을 반환하는 경우와 마찬가지로 자동으로 응답을 List<users>에 바인딩 할 수 있습니까? 일단 우리가 채널을 생성하면 WebHttpBinding을 가진 WCF 클라이언트에서 서비스 인터페이스에 대한 참조를 얻고 RPC와 같은 메소드를 호출하고 모델을 사용할 수 있습니다.WebAPI : HttpClient 응답 문자열 모델 바인딩

WebApi를 사용하면 응답을 처리 할 수있는 좋은 방법이 있습니다. 그러나 사용자 또는 List<User>과 같은 모델에 응답을 자동으로 바인딩하거나 캐스팅 할 수있는 방법을 얻을 수 없습니다. 당신의 나머지 클라이언트가 System.Net.Http.HttpClient 경우

답변

3

는 :

 var result = new List<User>(); 
     var client = new HttpClient(); 
     client.GetAsync("http://sample.net/api/user/GetList").ContinueWith((task) => 
     { 
      HttpResponseMessage response = task.Result; 

       response.Content.ReadAsAsync<List<User>>().ContinueWith((readTask) => 
       { 
        result = readTask.Result; 
       }); 
     }).Wait(); 
+0

ReadAsAsync () 확장 방법이다. System.Net.Http.Formatting에 대한 참조가 필요합니다. 이상한 이유로 시스템 참조 목록에 나타나지 않았습니다. 나는 그것을 나타 내기 위해 "포맷팅"을 검색해야했습니다. – bbsimonbb