Hvordan udlister jeg vha for-løkke ?
Sagen er den at jeg gerne ville udliste til labels vha en for-løkke, og jeg vil ha alle records udlistet...Og jeg kan forstå på alle mine errors, at det her er en hel forkert måde at gøre det på: altså, i min for-løkke...
Så derfor viser jeg de 2 eksempler i for-løkken, jeg har forsøgt... Har selvf ikke forsøgt dem begge på én gang...
protected void udlist(object sender, EventArgs e)
{
SqlConnection DER = new SqlConnection();
DER.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();
SqlCommand SOM = new SqlCommand();
SOM.Connection = DER;
SOM.CommandType = CommandType.Text;
SOM.CommandText = "SELECT id, navn, antal, price FROM produkt";
DER.Open();
SqlDataReader reader = null;
reader = SOM.ExecuteReader();
if (reader.Read())
{
int i;
i = 0;
for (i = 0; i < 10;i++)
{
string navn;
navn = reader["navn"].ToString();
this.Controls["Label" + i].Text = navn;
this.Controls["Label" + i].Text = reader["navn"].ToString();
}
}
DER.Close();
}
I min aspx hedder mine Labels Label1, Label2 osv...
Hvis jeg skriver det sådan her lige ud,
this.Controls["Label" + i].Text = reader["navn"].ToString();
så kommer den med denne error:
"The best overload method match for System.Web.UI.ControlCollection.this[int]" has som invalid arguments.
Og Argument'1' can not convert from string to int
Denne error kommer den også med, hvis jeg skriver dether:
navn = reader["navn"].ToString();
this.Controls["Label" + i].Text = navn;
Et el andet siger mig, at den skal ha noget index noget på BEGGE sider af =...Altså noget a la...[i].Text..?
Skal lige siges at jeg aldrig har prøvet at rode med for/foreach-løkker...de kan jo ellers mange ting ift repeater...:-)
NB: Jeg ved godt at man bare ku ha brugt en repaeter el datalist...men så ville man jo ikke ku få udlistet dem i hver deres labels...