labels[i]
以外はすべて正常に動作します。ループは常にhtmlLabel1に書き込まれ、htmlLabel2などには書き込まれません。 反復はlabels[i]
では機能しませんが、Reader.GetValue(i)
ではうまくいかないのはなぜですか?ループの反復はそれほどうまくいかないでしょう
MySqlConnection connection = new MySqlConnection(myConnectionString);
MySqlCommand command = connection.CreateCommand();
command.CommandText = "SELECT number FROM numbers ORDER BY RAND() LIMIT 2; ";
MySqlDataReader Reader;
connection.Open();
Reader = command.ExecuteReader();
while (Reader.Read())
{
HtmlLabel[] labels = new HtmlLabel[] {
htmlLabel1,
htmlLabel2,
htmlLabel3
};
for (int i = 0; i < Reader.FieldCount; i++)
{
labels[i].Text = Reader.GetValue(i).ToString();
Console.WriteLine(Reader.GetValue(i).ToString());
}
}
connection.Close();
を使用しています。内側のループはレコードごとに1回のみループします。 – Steve
@Florian Reader.FieldCountのforループは、3行目のselect文の列をループします。ループするフィールドは1つだけです。何をループしようとしていますか? – LAS
@LAS私はその最善の方法ですが。私はmysqlから10 rndエントリを取得し、すべてのエントリを別のラベルに貼り付ける必要があります。 – Florian