試みにTwitterクライアント作成開始


DLR本が遅くなりそうなので、Twitterクライアントを先に作ってみようかと。

http://hasami-food.sakura.ne.jp/wp/keyborttaro/



とりあえず、グーグル先生に聞いたら、C#ではnojimaさんの日記が。
http://d.hatena.ne.jp/nojima718/20100129/1264792636

あとは、Accessに保存するよういつものようにDAO作成。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ABCS.DAOs;
using System.Data;

namespace きぼったろうーテスト.DAOs
{
    class twitterDAO : MyDAOBase
    {
        public twitterDAO(DAOContext con) : base(con) { }

        private DataTable selectAccount()
        {
            string sql = @"select *
                            from twitter
                            ";

            return base.GetTable(sql);
        }
        public Dictionary getAccountData()
        {
            Dictionary ac = new Dictionary();
            DataTable tbl = this.selectAccount();
            if (tbl.Rows.Count < 1) return null;
            DataRow row = tbl.Rows[0];

            ac["AccessToken"] = row["AccessToken"].ToString();
            ac["AccessTokenSecret"] = row["AccessTokenSecret"].ToString();
            ac["UserId"] = row["UserId"].ToString();
            ac["ScreenName"] = row["ScreenName"].ToString();

            return ac;
        }
        public int updateAccount(Dictionary ac)
        {
            string sql = @"update twitter
                            set
                                AccessToken = @paccesstoken,
                                AccessTokenSecret = @paccesstokensecret,
                                UserId = @puserid,
                                ScreenName = @pscreenname
                            where
                                ID = 1";

            this.ClearParameters();
            this.AddParameter("paccesstoken", DbType.String, ac["AccessToken"]);
            this.AddParameter("paccesstokensecret", DbType.String, ac["AccessTokenSecret"]);
            this.AddParameter("puserid", DbType.String, ac["UserId"]);
            this.AddParameter("pscreenname", DbType.String, ac["ScreenName"]);

            return base.ExecuteNonQuery(sql);
        }

    }
}

今日は、PINコード取得画面まで。