API поиска Bings всегда возвращает одинаковые 10 результатов - PullRequest
1 голос
/ 19 ноября 2011

Я пытаюсь выяснить API Bings Seach. Я добавил службу SOAP в свое решение и получаю результаты. Проблема в том, что отображаемые результаты всегда одинаковы, независимо от того, что я установил request.Web. Когда я делаю поиск, он отображает 98 результатов, так что это не отсутствие результатов.

        BingService soapClient = new BingService();

        string resp = string.Empty;
        SearchRequest request = new SearchRequest();
        request.AppId = ConfigurationManager.AppSettings["BingKey"];
        request.Sources = new BingLiveSearchService.SourceType[] { SourceType.Web };
        request.Query = query;
        request.Web = new BingLiveSearchService.WebRequest { Count = 10, Offset = 10 };

        var response = soapClient.Search(request);
        if (response.Web != null && response.Web.Total > 0)
        {
            resp += "TOTAL COUNT:"+response.Web.Total +"<br/><br />";
            foreach (var item in response.Web.Results)
            {
                resp += "<div style='padding-bottom:10px;'>" + item.Title + "</div>";
            }

        }

Ответы [ 2 ]

2 голосов
/ 19 ноября 2011

это странно с этими API, но вам нужно установить для указанной переменной значение true, поэтому добавьте

request.Web.CountSpecified = true;
request.Web.OffsetSpecified = true;
2 голосов
/ 19 ноября 2011

Взгляните на WebRequest.Count . Похоже, вы можете настроить количество результатов для возврата через это.

EDIT: Вот пример, где используется .Count.

...