2014-05-22 1 views
0

저는 REST 서비스를 새로 작성했으며 다음에 C#에서 REST 호출을 허용하는 .net 클라이언트를 작성하기 위해 #을 작성했습니다.전체 항목 수를 얻기 위해 전화를 걸어주세요

나는 내 코드의 요청과 같은 단일 항목을 얻을 수 있도록 할 수 있습니다

HttpResponseMessage response = await client.GetAsync("api/products/1"); 
if (response.IsSuccessStatusCode) 
{ 
    Product product = await response.Content.ReadAsAsync<Product>(); 
    Console.WriteLine("{0}\t${1}\t{2}", product.Name, product.Price, product.Category); 
} 

여기 내 목표는 단지 ​​한 항목 만 모든 항목을 나열하지하는 것입니다 :이 코드를 사용

api/products/1 

을 . 나는 URI에 내가 일반적으로

api/products 

이 항목의 전체 목록을 보려면 입력 할 수 있습니다 알고 있지만 코드에서 I는 응답 변수에 그 모두를 저장할 수 없습니다 위.

  1. HttpResponseMessage가 배열 일 수 있습니다

    그래서 제 질문은 아마이 개 부분입니까? api/products를 호출하여 그렇게 할 수 있습니까?

  2. 총 항목 수를 반환하여 나중에 사용할 수 있도록 요청할 수있는 방법이 있습니까?

답변

1

api/products 엔드 포인트를 반환하는 경우, 예를 들어, Product 요소의 JSON 배열은, 당신은 간단하게이 작업을 수행 할 수 있습니다

HttpResponseMessage response = await client.GetAsync("api/products"); 
if (response.IsSuccessStatusCode) 
{ 
    List<Product> products = await response.Content.ReadAsAsync<List<Product>>(); 
    foreach (var product in products) 
    { 
     Console.WriteLine("{0}\t${1}\t{2}", 
      product.Name, product.Price, product.Category); 
    } 
} 
관련 문제