Комментарии и подкомментарии - PullRequest
0 голосов
/ 22 января 2012

Мне нужно, чтобы под-комментарии были чуть ниже комментариев, которые я пробовал описанным ниже способом, и он мог получить только первый основной комментарий и все его под-комментарии, но не смог загрузить их из второго основного комментария.Я использовал логику

            MyConnection.Open();
            OdbcCommand cmd = new OdbcCommand("Select * from maincomments", MyConnection);
            OdbcDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                string abc1 = dr[0].ToString();
                string abc2 = dr[1].ToString();
                string abc3 = dr[2].ToString();
                string abc4 = dr[3].ToString();
                string abc5 = dr[4].ToString();
                string abc6 = dr[5].ToString();
                string abc7 = dr[6].ToString();

                maincomm.Controls.Add(new LiteralControl(abc2 + "<br />" + abc5 + "<br />"));
                cmd = new OdbcCommand("Select * from subcomments where acc_id=?", MyConnection);
                cmd.Parameters.Add("@email", OdbcType.BigInt, 20).Value = abc1;
                dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    string abcd1 = dr[0].ToString();
                    string abcd2 = dr[1].ToString();
                    string abcd3 = dr[2].ToString();
                    string abcd4 = dr[3].ToString();
                    string abcd5 = dr[4].ToString();
                    string abcd6 = dr[5].ToString();
                    string abcd7 = dr[6].ToString();
                    string abcd8 = dr[7].ToString();
                    maincomm.Controls.Add(new LiteralControl(abcd3 + "<br />" + abcd6 + "<br />"));
                }
            }
            MyConnection.Close();

. В приведенном выше коде acc_id является серийным номером основных комментариев.

Что не так в моем коде?

1 Ответ

2 голосов
/ 22 января 2012

Пока вы используете dr для получения комментариев, во внутреннем цикле вы перезаписываете его с помощью DataReader для получения подкомментариев.

Вы должны использовать разные переменные для двух (например, drComments иdrSubComments)

Вот что выглядит неправильно с функциональной точки зрения.Мое мнение таково, что есть еще некоторые улучшения, которые необходимо сделать.После того, как вы исправите код, я настоятельно рекомендую опубликовать этот код на CodeReview , чтобы получить полезные советы о том, как его реорганизовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...