ListPage

2010年12月2日木曜日

[C#] Yahoo デベロッパーネットワーク 続き

Yahoo デベロッパーネットワーク

WebAPI

とりあえず、オークション情報の取得を考えた結果、前回の様なカテゴリー名やカテゴリーIDが
必要だった!

で、何も考えずチェックボックスのNameプロパティの後にカテゴリーIDを付け足してあった・・。

this.CategoryCheckBox[i].Name = "CategoryCheckBox" + dt.Rows[i][0].ToString();
・・・こっからどう進めて行こうか。
とりあえず、ちゃんとCategoryCheckBoxができてるか確かめー。


ううーむ・・。チェックを入れた時にカテゴリーIDを収集するか・・。
Listとかに突っ込んでKEYみたいので判断するか悩むなー。と適当な事を考えつつ
WEBを見てたら、昨日書いたデシリアライズとシリアライズのサンプル発見!!

  public Yahoo.API.WebSearchResponse.ResultSet WebSearch(string appId, string query, string type, short results, int start, string format, bool adultOk, bool similarOk, string language)
  {
   string requestUri = 
                String.Format("http://api.search.yahoo.com/WebSearchService/V1/webSearch?appid={0}&query={1}&type={2}&results={3}&start={4}&format={5}&adult_ok={6}&similar_ok={7}&language={8}", 
                appId, HttpUtility.UrlEncode(query, Encoding.UTF8) , type, results, 
                start, format, adultOk ? "1" : "0", similarOk ? "1" : "0", language);

   HttpWebRequest request = (HttpWebRequest)WebRequest.Create(requestUri);

   Yahoo.API.WebSearchResponse.ResultSet resultSet = null;
   using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
   {
    using (Stream responseStream = response.GetResponseStream())
    {
     XmlSerializer serializer = new XmlSerializer(typeof(Yahoo.API.WebSearchResponse.ResultSet));
     resultSet = (Yahoo.API.WebSearchResponse.ResultSet)serializer.Deserialize(responseStream);
    }
   }

   return resultSet;
  }

引数多すぎ!って思ったけどまぁ考えてくれた人ありがとー!この攻撃的なコードは
日本人じゃない。多分。

また駄文が長くなったので次回。

0 件のコメント:

コメントを投稿