次の方法で共有


SearchRequest.Location プロパティ (Search)

SearchRequest のロケーション データ。

構文

public Location Location { get; set; }

解説

以下の 3 つの条件が満たされる場合、検索結果では、Web の検索結果の適合度に地理的位置が考慮されます。

  • SearchRequest で Location が指定されていること。
  • SourceRequestSourceType.Webに設定されていること。
  • LongitudeLatitude、および Radius の各フィールドに有効なデータが含まれていること。

SourceType.PhoneBook である SourceRequestLongitudeLatitude、および Radius の各フィールドに有効なデータが含まれている場合、検索によって返される結果には、指定されている半径 (単位: マイル) の範囲内のすべての電話帳エントリが含まれます。

注意: Radius 値が指定されていない場合は、既定値である 5 マイルが使用されます。

この例では、検索結果をフィルタするため、以下の値を使用して、Web SourceType のすべて (All) のフィールドを要求します。

  • Location: Mazatlán (シナロア州、メキシコ)
  • CultureInfo 設定: es-MX (メキシコで話されているスペイン語)
  • SearchFlags.MarkQueryWords 設定: 検索キーワードの前後にトークンを表示します。
  • Query: corona
  • SafeSearchOptions.Strict 設定: 検索結果を絞り込みます (制限付き)。

出力では、タイトル、説明、および URL がコンソール ウィンドウに表示されます。以下では、Location プロパティの設定コードを太字で示しています。

try
{
MSNSearchService s = new MSNSearchService();
SearchRequest searchRequest = new SearchRequest();
int arraySize = 1;
SourceRequest[] sr = new SourceRequest[arraySize];

sr[0] = new SourceRequest();
sr[0].Source = SourceType.Web;
sr[0].ResultFields = ResultFieldMask.All;

// Developer Provisioning System で指定されたアプリケーション ID を 二重引用符で囲って 
// SearchRequest の AppID の値として入力します。
searchRequest.AppID = "YOUR_APP_ID_GOES_HERE";
searchRequest.CultureInfo = "es-MX";
searchRequest.Flags = SearchFlags.MarkQueryWords;
    searchRequest.Location = new Location();
double latitude = 23.6683;
double longitude = -105.7238;
double radius = 25.0;
        searchRequest.Location.Latitude = latitude;
        searchRequest.Location.Longitude = longitude;
        searchRequest.Location.Radius = radius;
searchRequest.Query = "corona";
searchRequest.Requests = sr;
searchRequest.SafeSearch = SafeSearchOptions.Strict;

SearchResponse searchResponse;

searchResponse = s.Search(searchRequest);
foreach (SourceResponse sourceResponse in searchResponse.Responses)
    {
Result[] sourceResults = sourceResponse.Results;
if (searchResponse.Responses[0].Total > 0)
        {
Console.WriteLine(sourceResponse.Source.ToString() + " - 結果総数:" + sourceResponse.Total.ToString());
Console.WriteLine();
        }
foreach (Result sourceResult in sourceResults)
        {
if ((sourceResult.Title != null) && (sourceResult.Title != String.Empty))
Console.WriteLine("タイトル:" + sourceResult.Title);
if ((sourceResult.Description != null) && (sourceResult.Description != String.Empty))
Console.WriteLine("説明:" + sourceResult.Description);
if ((sourceResult.Url != null) && (sourceResult.Url != String.Empty))
Console.WriteLine("Url:" + sourceResult.Url);
Console.WriteLine("*****************************************************");
        }
Console.WriteLine("終了するにはいずれかのキーを押してください。");
Console.ReadLine();
    }
}
catch (SoapException fault)
{
Console.WriteLine(fault.Detail.InnerText.ToString());
Console.WriteLine("終了するにはいずれかのキーを押してください。");
Console.ReadLine();
}
catch (WebException webx)
{
Console.WriteLine(webx.ToString());
}

以下の出力の例は、このクエリの結果を示します。

Web - 結果総数: 5097625

タイトル:?corona?.com.mx

説明:Este sitio de Internet se encuentra dirigido hacia el uso personal, en países y otros territorios en los cuales el consumo de bebidas alcohólicas es permitido ...

Url:http://www.corona.com.mx/

*****************************************************

タイトル:?corona?.com.mx

説明:Lo sentimos, para ingresar a ?corona?.com.mx debe de ser mayor de edad.

Url:http://www.corona.com.mx/cancelar.html

*****************************************************

タイトル:Grupo Modelo

説明:Productores de las cervezas ?Corona?, Modelo, Victoria, Montejo, Pacífico, Estrella y León.(Símbolo:GMODELO).

Url:http://www.gmodelo.com.mx/

*****************************************************

タイトル:Desafio ?Corona? 2006

説明:La temporada 2006 del Desafío ?Corona? llegó a su fin con la Fiesta de Premiacón para honar a los campeones de la Stock Car y la Serie T4, donde además se realizó el importante anuncio de la ...

Url:http://www.desafiocorona.com/

*****************************************************

タイトル:Hacienda ?Corona? de Guevavi Bed & Breakfast

説明:Hacienda ?Corona? de Guevavi Bed & Breakfast is a small, romantic boutique Inn, located in the historic border town of Nogales, Arizona.

Url:http://www.haciendacorona.com/

*****************************************************

タイトル:Fundación ?Corona?

説明:Respaldada por la empresa ?Corona?, busca disminuir los niveles deinequidad y falta de oportunidades de la población más pobre del país.

Url:http://www.fundacioncorona.org.co/

*****************************************************

タイトル:Claudia ?Corona?

説明:El explorador no admite los marcos flotantes o no está configurado actualmente para mostrarlos, recomendamos actualice su versión. ...

Url:http://www.claudiacorona.com/Default.htm

*****************************************************

タイトル:HOTEL ?CORONA?

説明:HOTEL ?CORONA?ENSENADA MEXICO THE BEST HOTEL IN TOWN!

Url:http://www.hotelcorona.com.mx/

*****************************************************

タイトル:maggit » The Killers en México y ?Corona?Music Fest

説明:Pues sí, The Killers estará en nuestro país el próximo 13 de Diciembre en el Palacio de los Deportes, no era muy fan de esta banda, el Hot fuss megustó pero nada fuera de lo normal, pero desde ...

Url:http://maggit.com.mx/blog/?p=139

*****************************************************

タイトル:Salón ?Corona?- Todos los caminos llevan... al Salón ?Corona?

説明:Del Norte:Insurgentes Norte , a la derecha en la salida a la Av. Guerrero (Eje 1 poniente), en el cruce con la Av. Reforma a la izquierda , Av. Ju

árez a la derecha (pasa por la Alameda Central y ...

Url:http://www.saloncorona.com.mx/sllegar.html

*****************************************************

終了するにはいずれかのキーを押してください。