Bing Web API usage by ASP.NET(C#)

Front-end

 <asp:Button ID="CallBingAPI" runat="server" Text="Call Bing" 
        οnclick="CallBingAPI_Click" />
    <br />
    <asp:Label ID="Label1" runat="server" Text=""></asp:Label>


Back-end

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net;
using System.Data.Services.Client;
using System.Xml;

namespace SearchEngineApplication
{
    public partial class _Default : System.Web.UI.Page
    {
        const string AppId = "@@@@@@@@@@Your Code@@@@@@@@@@@@";  // the App ID of Bing

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            { 
              
            }
        }

        protected void CallBingAPI_Click(object sender, EventArgs e)
        {
            string serviceRoot = "https://api.datamarket.azure.com/Bing/Search/";
            string imageQueryRoot = serviceRoot + "Web?";
            string imageQuery = imageQueryRoot + "Query='xiao'&$top=1";

            var document = new XmlDocument();

            var accountCredential = new NetworkCredential(AppId, AppId);
            var resolver = new XmlUrlResolver();
            resolver.Credentials = accountCredential;
            document.XmlResolver = resolver;
            document.Load(imageQuery);

            var namespaceManager = new XmlNamespaceManager(document.NameTable);
            namespaceManager.AddNamespace("atom", "http://www.w3.org/2005/Atom");
            namespaceManager.AddNamespace("m", "http://schemas.microsoft.com/ado/2007/08/dataservices/metadata");
            namespaceManager.AddNamespace("d", "http://schemas.microsoft.com/ado/2007/08/dataservices");
            string nextResultSet = document.SelectSingleNode(
                                          "/atom:feed/atom:link[@rel='next']/@href",
                                          namespaceManager).Value;
            XmlNodeList imageResults = document.SelectNodes(
                                              "/atom:feed/atom:entry/atom:content/m:properties",
                                              namespaceManager);

           

            foreach (XmlNode imageResult in imageResults)
            {
                Label1.Text += "  " + imageResult.SelectSingleNode(".//d:Title", namespaceManager).InnerText;
            }

            foreach (XmlNode imageResult in imageResults)
            {
                Label1.Text += "  " + imageResult.SelectSingleNode(".//d:Description", namespaceManager).InnerText;
            }


        }

    }
}





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章