除了搜索外,也提供了廣告、影片、phonebook以及翻譯等等的功能.
protected void Button1_Click(object sender, EventArgs e)
{
using (LiveSearchPortTypeClient service = new LiveSearchPortTypeClient())
{
try
{
SearchRequest request = BuildRequestWeb();
// Send the request; display the response.
SearchResponse response = service.Search(request);
DisplayResponseWeb(response);
}
catch (System.Net.WebException ex)
{
// An exception occurred while accessing the network.
Console.WriteLine(ex.Message);
}
}
}
private SearchRequest BuildRequestWeb()
{
SearchRequest request = new SearchRequest();
// Common request fields (required)
request.AppId = "申請的AppID";
request.Query = TextBox1.Text.Trim();
request.Sources = new SourceType[] { SourceType.Web };
// Common request fields (optional)
request.Version = "2.0";
request.Market = "en-us";
request.Adult = AdultOption.Moderate;
request.AdultSpecified = true;
request.Options = new SearchOption[]
{
SearchOption.EnableHighlighting
};
// Web-specific request fields (optional)
request.Web = new WebRequest();
request.Web.Count = 30;
request.Web.CountSpecified = true;
request.Web.Offset = 0;
request.Web.OffsetSpecified = true;
request.Web.Options = new WebSearchOption[]
{
WebSearchOption.DisableHostCollapsing,
WebSearchOption.DisableQueryAlterations
};
return request;
}
private void DisplayResponseWeb(SearchResponse response)
{
ListBox1.Items.Clear();
ListBox1.Items.Add("Bing API Version " + response.Version);
ListBox1.Items.Add("Web results for " + response.Query.SearchTerms);
ListBox1.Items.Add(string.Format("Displaying {0} to {1} of {2} results",
response.Web.Offset + 1,
response.Web.Offset + response.Web.Results.Length,
response.Web.Total));
// Display the Web results.
System.Text.StringBuilder builder = new System.Text.StringBuilder();
foreach (WebResult result in response.Web.Results)
{
builder.Length = 0;
builder.AppendLine(result.Title);
builder.AppendLine(result.Description);
builder.AppendLine(result.Url);
builder.Append("Last Crawled: ");
builder.AppendLine(result.DateTime);
ListBox1.Items.Add(builder.ToString());
}
}The following optional parameters are applicable to this SourceType.
如果把request.Market 改成 "zh-tw",會發現搜尋結果變多了(142000->154000)(這告訴我們要選對區域阿).
希望這篇文章對您有所幫助. :-)