記録として残しておきたいブログ

主にプログラミングについて書きます。現在は http://tmg0525.hatenadiary.jp/ に書いています。

コメビュで再度コメントを取得してしまうバグの原因がわかった!!

原因

一番新しいコメントを削除する

すると、

少し前に取得した(取得数ぶん:10個)コメントを取得してしまう

 

jsonCommentlist は取得したコメント情報

ArrayList history = new ArrayList(); // 取得開始してからのコメントのIDを格納しておく
private string[] comList = new string[5];
private string[,] com;
private int takeNum = 0;
private bool isLastComment = true;

...
public void commeDisplay() { takeNum = 0; isLastComment = true; com = new string[10, 5]; bool isKaburi = false; foreach (dynamic Comment in jsonCommentlist) { isKaburi = false; if (history.Count != 0) { // かぶっていないか foreach (double his in history) { if (his == Comment.commentid) { isKaburi = true; break; } } } else { history.Add(Comment.commentid);
kakuno(Comment); }
if (!isKaburi && history.Count != 0) { history.Add(Comment.commentid); kakuno(Comment); } }
}

 今まで取得したコメントのコメントIDをリストに入れておいて、それと比較して同じものがなかったら表示するようにすればいい!!

リストの要素数が一度に取得するコメント数より大きくなったら空にしてもいいかも。ずっと取得していったらメモリとかぱんぱんになっちゃいそうだし。(メモリのこととかよくわかんないけど)