0

データベースからデータをクエリした後、datareader を使用して配列を埋めました。以下の通り。

connection.Open();
System.Data.SqlClient.SqlDataReader reader = command.ExecuteReader();
reader.Read();

_firstname = reader[0].ToString();
_Year = reader[1].ToString();
_coursename = reader[2].ToString();
_credits = reader[3].ToString();
_mark = reader[4].ToString();
_firstname2 = reader[5].ToString();

reader.Close();

Iしかし、結果は以下のように表示されます

1 - Sam Bons 
2- 2012 
3- DDD 
4- 3 
5- 80 

DB からすべての結果を取得して印刷するループを実行するにはどうすればよいですか?

ありがとうございました


私はそのようにしましたありがとうアン

result = string.Empty;
                int counter = 1;
                while (reader.Read())
                {
                    _firstname = reader[0].ToString();
                    _Year = reader[1].ToString();
                    _coursename = reader[2].ToString();
                    _credits = reader[3].ToString();
                    _mark = reader[4].ToString();

                    result += string.Format("{5} - {0}{1}{2}{3}{4} </br>  ",
                        _firstname,
                        _Year,
                        _coursename,
                        _credits,
                        _mark,
                        counter);
                    counter++;

                }
                Response.Write(result);

                reader.Close();
4

1 に答える 1

2

まず、あなたが述べたように、実際には配列に何も入れていません。ローカル変数の外観を設定しているだけです。

質問がループの構文に関するものである場合、次のようになります。

while(reader.Read())
{
   // set your variables
   // do something with the variables
}

それを ExecuteReader 呼び出しと reader.Close() 呼び出しの間に入れます。

于 2012-04-16T19:38:59.300 に答える