Quickstart: Use the Bing News Search .NET client library
Use this quickstart to begin searching for news with the Bing News Search client library for C#. While Bing News Search has a REST API compatible with most programming languages, the client library provides an easy way to integrate the service into your applications. The source code for this sample can be found on GitHub.
Prerequisites
Any edition of Visual Studio 2017 or later.
The Json.NET framework, available as a NuGet package.
If you are using Linux/MacOS, this application can be run using Mono.
The Bing News Search SDK NuGet package. Installing this package also installs the following:
- Microsoft.Rest.ClientRuntime
- Microsoft.Rest.ClientRuntime.Azure
- Newtonsoft.Json
To set up a console application using the Bing News Search client library, browse to the Manage NuGet Packages
option from the Solution Explorer in Visual Studio. Add the Microsoft.Azure.CognitiveServices.Search.NewsSearch
package.
Create and initialize a project
Create a new C# console solution in Visual Studio. Then add the following into the main code file.
using System; using System.Linq; using Microsoft.Azure.CognitiveServices.Search.NewsSearch;
Create a variable for your API key, a search term, and then instantiate the news search client with it.
var key = "YOUR-ACCESS-KEY"; var searchTerm = "Quantum Computing"; var client = new NewsSearchClient(new ApiKeyServiceClientCredentials(key));
Send a request, and parse the result
Use the client to send a search request to the Bing News Search service:
var newsResults = client.News.SearchAsync(query: searchTerm, market: "en-us", count: 10).Result;
If any results were returned, parse them:
if (newsResults.Value.Count > 0) { var firstNewsResult = newsResults.Value[0]; Console.WriteLine($"TotalEstimatedMatches value: {newsResults.TotalEstimatedMatches}"); Console.WriteLine($"News result count: {newsResults.Value.Count}"); Console.WriteLine($"First news name: {firstNewsResult.Name}"); Console.WriteLine($"First news url: {firstNewsResult.Url}"); Console.WriteLine($"First news description: {firstNewsResult.Description}"); Console.WriteLine($"First news published time: {firstNewsResult.DatePublished}"); Console.WriteLine($"First news provider: {firstNewsResult.Provider[0].Name}"); } else { Console.WriteLine("Couldn't find news results!"); } Console.WriteLine("Enter any key to exit..."); Console.ReadKey();