0

アプリに LinkedIn を統合しようとしていますが、応答テーブルの値が上書きされます

私は3つのテーブルを持っています

顧客テーブル (LinkedIn に投稿したユーザーの詳細は、このテーブルに保存されます)

Customer_Id   Name    Cust_date   User_id   Community

Efthok        xxxx    04-Mar-13   Efthok    LinkedIn
df343n        yyyy    27-Jun-13   df343n    LinkedIn
4retee        zzzz    01-Jul-13   4retee    LinkedIn  

Post Table(投稿はここに保存されます)Customer_IdはCustomerテーブルの外部キーです

Customer_Id   Post_Id   Posts                   PostDate      Community

Efthok        guujjk    intersted in car loan   04-Mar-2013   LinkedIn
df343n        fdg4df    we are offering loans   27-Jun-2013   LinkedIn
4retee        hgf454    ********************    01-Jul-2013   LinkedIn

応答テーブル (投稿にコメントを付ける人) //ここで、値は私のコードで上書きされます Response_Id Customer_Id Post_Id Response ResponseDate Community

767hhjj       Efthok        guujjk   let me know the interest  06-Apr-2013   Linked
gdf5654       Efthok        guujjk   let me know the interest  06-Apr-2013   Linked

私はこのコードを書いた

List<> 内のすべてのコメントを取得するため

  public void commentM()
    {
        XmlDocument d = new XmlDocument();
        d.LoadXml(content);

        XmlNodeList comments = d.SelectNodes("//comments/comment");
        foreach (XmlNode xncomment in comments)
        {
            commentId = xncomment["id"].InnerText;
            memComments = xncomment["text"].InnerText;
            string timeStamp = xncomment["creation-timestamp"].InnerText;
            double cmtTimeStamp1 = Convert.ToDouble(timeStamp);
            DateTime comment_timestamp1 = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(Math.Round(cmtTimeStamp1 / 1000d)).ToLocalTime();
            comment_timestamp = comment_timestamp1.ToString("dd-MMM-yy");

            commentData = new CommentData { CommentId = commentId, Comments = memComments, CommentTimeStamp = comment_timestamp };
            listComment.Add(commentData);
            commentM1();
        }
    }

 public void commentM1()
    {
        for (int i = 0; i < listCustomer.Count; i++)
        {
            var grt = listCustomer[i];
            id = grt.UserId;

            for (int k = 0; k < listPost.Count; k++)
            {
                string post_id1 = listPost[k].PostId;

                for (int j = 0; j < listComment.Count; j++)
                {
                    comId = listComment[j].CommentId;
                    comments1 = listComment[j].Comments;
                    commentTime = listComment[j].CommentTimeStamp;

                    DbConnection.Open();
                    DbCommand = new OleDbCommand("select count(response_id) from mw_response where response_id = '" + comId + "'", DbConnection);
                    OleDbDataReader DbReader = DbCommand.ExecuteReader();

                    while (DbReader.Read())
                    {
                        count = DbReader[0].ToString();
                        cnt = Convert.ToInt32(count);

                        if ((cnt == 0) && (memComments != ""))
                        {
                            DbCommand = new OleDbCommand("insert into mw_response(post_id,response,response_id, resp_date,community) values('" + post_id1 + "','" + comments1 + "','" + comId + "','" + commentTime + "','LinkedIn')", DbConnection);
                            DbCommand.ExecuteNonQuery();

                            //update productid and customerid
                            DbCommand = new OleDbCommand("update mw_response set prod_id = (select prod_id from mw_post where post_id='" + post_id1 + "'),customer_id = (select customer_id from mw_customer where customer_id = '" + id + "') where response_id = '" + comId + "'", DbConnection);
                            DbCommand.ExecuteNonQuery();

                                                        }
                    }
                    DbReader.Close();
                    DbConnection.Close();
                }
            }
        }
    }

List<> で Customer、Response、および Post 値のデータを収集し、その値を CommentM1() メソッドでループしています。

Response(投稿に対するコメント)をきちんと取得したい。

誰かがこの投稿に「ローンを提供しています」というコメントをした場合、(Post テーブル) からの Post_id と customer_id を Response テーブルに格納する必要があります。

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

4

1 に答える 1