using system;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Runtime.Serialization.Json;
using System.Text;
namespace WebApplication21
{
[Serializable]
allmänhet klassificerar GooglePage
{
allmänhet stränger start;
allmänhet stränger etiketten;
}
[Serializable]
allmänhet klassificerar GoogleResponseCursor
{
offentliga GooglePage [] sidor;
offentlig int-estimatedResultCount;
offentlig int-currentPageIndex;
allmänhet stränger moreResultsUrl;
}
[Serializable]
allmänhet klassificerar GoogleResponseData
{
allmänhet stränger [] resultat;
offentlig GoogleResponseCursor markör;
}
[DataContract]
allmänhet klassificerar ResponseData
{
(Namnge = ”responseDataen”)] [DataMember,
offentlig ResultList responseData
{få; uppsättning; }
(Namnge = ”responseDetails”)] [DataMember,
allmänhet stränger responseDetails
{få; uppsättning; }
(Namnge = ”responseStatusen”)] [DataMember,
allmänhet stränger responseStatus
{få; uppsättning; }
}
[DataContract]
allmänhet klassificerar ResultList
{
(Namnge = ”resulterar”)] [DataMember,
offentliga GsearchResultClass [] GResult
{få; uppsättning; }
}
[DataContract]
allmänhet klassificerar GsearchResultClass
{
(Namnge = ”GsearchResultClass”)] [DataMember,
allmänhet stränger GsearchResult
{få; uppsättning; }
}
offentligt partiskt klassificerar _Default: System.Web.UI.Page
{
skyddade utan laga kraft Page_Load (anmärka avsändaren, EventArgs e),
{
stränga mest soaprequest = ”{\ ”responseDataen \”: {\ ”resultat \”: [{\ ”GsearchResultClass \”: \ ”GwebSearch \”, \ ”unescapedUrl \”: \ ”http://en.wikipedia.org/wiki/Paris_Hilton \”, \ ”url \”: \ ”http://en.wikipedia.org/wiki/Paris_Hilton \”, \ ”visibleUrl \”: \ ”en.wikipedia.org \”, \ ”titleNoFormatting \”: \ ”Paris Hilton - Wikipedia, den fria encyklopedien \”}, {\ ”GsearchResultClass \”: \ ”GwebSearch \”, \ ”unescapedUrl \”: \ ”http://www.imdb.com/name/nm0385296/ \”, \ ”url \”: \ ”http://www.imdb.com/name/nm0385296/ \”, \ ”visibleUrl \”: \ ”www.imdb.com \”, \ ”titleNoFormatting \”: \ ”Paris Hilton \”}], \ ”markör \”: {\ ”sidor \”: [{\ ”start \”: \ ”0 \”, \ ”etikett \”: 1}, {\ ”starten \”: \ ”4 \”, \ ”etikett \”: 2}, {\ ”starten \”: \ ”8 \”, \ ”etikett \”: 3}, {\ ”starten \”: \ ”12 \”, \ ”etikett \”: 4}], \ ”estimatedResultCount \”: \ ”59600000 \”, \ ”currentPageIndex \”: 0 \ ”moreResultsUrl \”: \ ”http://www.google.com/search?oe \”}}, \ ”responseDetails \”: ogiltig \ ”responseStatus \”: 200} ”;
DataContractJsonSerializer ser = nya DataContractJsonSerializer (typeof (ResponseData));
respBytes för byte [] = (mest soaprequest) ASCIIEncoding.UTF8.GetBytes;
använda (StreamReader avläsare = nya StreamReader (nya MemoryStream (respBytes)))
{
DataContractJsonSerializer serializer = nya DataContractJsonSerializer (typeof (ResponseData));
ResponseData returnObj = (ResponseData) serializer.ReadObject (reader.BaseStream);
}
}
}
}
|