5

Twitterからつぶやきを取得しようとしています

しかし、私はエラーが発生します

オブジェクト参照がインスタンスに設定されていません

コード:

    public void Call_Tweet_Update()
    {
        var service = new TwitterService(Consumer_Key, Consumer_Secret);
        service.AuthenticateWith(Access_Token, AccessToken_Secret);

        var tweets = service.ListTweetsOnHomeTimeline(new ListTweetsOnHomeTimelineOptions { Count = 200 });
        string[] twt_id = new string[50];
        long id = 0;
        int i = 0;
        int increment = 0;
        string twtid;
        string screenname;

        foreach (var tweet in tweets)
        {
            if (tweet.InReplyToStatusId.ToString() != "")
            {
                if ((tweet.User.ScreenName == "IIPL_LTD") || (tweet.Text.StartsWith("@IIPL_LTD")))
                {
                    string replyid = tweet.InReplyToStatusId.ToString();

                    while (replyid != "")
                    {
                        if (i == 0)
                        {
                            twt_id[i] = tweet.Id.ToString();
                        }
                        id = Convert.ToInt64(replyid);
                        var twt = service.GetTweet(new GetTweetOptions { Id = id });
                        //twtid = Convert.ToInt64(tweet.Id).ToString();
                        twtid = Convert.ToInt64(twt.Id).ToString();
                        //abc = twtid;
                        i = i + 1;
                        twt_id[i] = twtid;
                        replyid = twt.InReplyToStatusId.ToString();
                       // replyid = tweet.InReplyToStatusId.ToString();
                        // replyid = "";
                        increment = increment + 1;
                    }
                  }
                }

これは、インスタンスに設定されていないオブジェクト参照によって終了したコードです

38811592704としてIDを取得していますが、以下の行はnull値を取得しています

var twt = service.GetTweet(新しい GetTweetOptions { Id = id });

   while (replyid != "")
   {
       if (i == 0)
       {
          twt_id[i] = tweet.Id.ToString();
       }
       id = Convert.ToInt64(replyid);
       var twt = service.GetTweet(new GetTweetOptions { Id = id });
       twtid = Convert.ToInt64(twt.Id).ToString();
    }

何か案は?前もって感謝します。

4

2 に答える 2

1

コードをデバッグします。このエラーが発生しているオブジェクトを確認してから、NEW キーワードを使用してそのオブジェクトの新しいインスタンスを作成し、このエラーを解決してください。

たとえば、var twt = service.GetTweet(new GetTweetOptions { Id = id }); とします。

オブジェクト内のサービスの場合、それを使用する前に新しいインスタンスを作成する必要があります

于 2013-12-04T05:39:51.487 に答える