2014-11-18 4 views
0

C#에서 Winform과 함께 BingSearchContainer.cs를 사용하고 있습니다. 다음 코드를 사용하여 결과를 반환합니다. 좋은 시간을 보냈다면 다른 페이지의 결과를 반환하는 방법을 알 수 없습니다. 한 번에 최대 50 개의 결과 만 반환 할 수 있습니다. 더 많은 페이지를 반환하고 "imageSet"에 추가하여 결과 이미지의 전체 목록을 얻고 싶습니다. 어떤 힌트 나 포인터라도 도움이된다면 도움이 될 것입니다.Bing Search Container에서 C#으로 결과의 다음 페이지를 얻는 방법?

void bingSearch(string searchTerm) 
     { 
      try 
      { 
       imageSet = new List<Bing.ImageResult>(); 
       const string bingKey = "[key]"; 
       var bing = new BingSearchContainer(
       new Uri("https://api.datamarket.azure.com/Bing/Search/")) { Credentials = new NetworkCredential(bingKey, bingKey) };     
       var query = bing.Image("\"" + searchTerm + "\"" + "(" + site1 + " OR " + site2 + ")", null, null, null, null, null, ImageFilters); 
       Debug.Print("Full Search: " + query.ToString()); 
       query = query.AddQueryOption("$top", 50); 
       query = query.AddQueryOption("$skip", 20); 
       var results = query.Execute(); 
       int index = 0; 
       foreach (var result in results) 
       { 
        imageSet.Add(result); 
        Debug.Print("URL: " + imageSet[index].MediaUrl); 
        index++; 
       } 
       Debug.Print("Results: " + imageSet.Count); 
      } 
      catch 
      { 
       Debug.Print("Error"); 
      } 
     } 

답변

0

해결했습니다.

사실 매우 간단합니다. "$skip", 20 쿼리 옵션은 페이지의 오프셋을 설정합니다. 예를 들어 오프셋 0을 사용하면 처음 50 개의 이미지가 나오고 50 개의 오프셋이 다음 50 개의 이미지를 얻습니다.