Jag vill få ett resultat som liknar detta: TjenaTabellen finns kvar i minnet
<info>
2003
Vecka 1 Vecka 2 Vecka 3 Vecka 4
Vecka 5 Vecka 6 Vecka 7 Vecka 8
------------------------------------
2004
Vecka 1 Vecka 2 Vecka 3 Vecka 4
Vecka 5 Vecka 6 Vecka 7 Vecka 8
</info>
Men av någon anledning så kommer tabellen där jag la in veckorna för 2003 in i samma tabell som för veckorna i 2004. På följande vis:
<info>
2003
Vecka 1 Vecka 2 Vecka 3 Vecka 4
Vecka 5 Vecka 6 Vecka 7 Vecka 8
------------------------------------
2004
Vecka 1 Vecka 2 Vecka 3 Vecka 4
Vecka 5 Vecka 6 Vecka 7 Vecka 8
Vecka 1 Vecka 2 Vecka 3 Vecka 4
Vecka 5 Vecka 6 Vecka 7 Vecka 8
</info>
Min kod ser ut så här:
<code>
foreach(DataRow myRow in myData.Tables["Ar"].Rows)
{
myDataAdapter.SelectCommand = new OleDbCommand("select * from tidningar Where TidningsID = "+ myExternLinkButton.Attributes["PlatsID"].ToString() +" and ar = "+ myRow["ar"].ToString() +" Order By vecka", myConn);
if (myConn.State != ConnectionState.Open)
myConn.Open();
myDataAdapter.Fill(myData,"Vecka");
myConn.Close();
Table myTable = new Table();
myTable.Attributes["Width"] = "100%";
myTable.Attributes["border"] = "1";
TableRow myTableRow = new TableRow();
TableCell[] myTableCell = new TableCell[4];
myTableCell[0] = new TableCell();
myTableCell[1] = new TableCell();
myTableCell[2] = new TableCell();
myTableCell[3] = new TableCell();
int counter = 0;
foreach(DataRow myRowVecka in myData.Tables["Vecka"].Rows)
{
if(counter > 3)
{
myTable.Rows.Add(myTableRow);
myTableRow.Cells.Clear();
counter = 0;
}
LinkButton myLinkButton = new LinkButton();
if(myRowVecka["Vecka"].ToString() == "0")
myLinkButton.Text = "Vecka "+ myRowVecka["Vecka"].ToString() +"<br>";
else
myLinkButton.Text = "Vecka "+ myRowVecka["Vecka"].ToString() +"-"+ myRowVecka["Vecka2"].ToString() +"<br>";
myLinkButton.Attributes["Class"] = "Text";
myLinkButton.Attributes["Target"] = "_blank";
myLinkButton.Attributes["Href"] = myRowVecka["Fil"].ToString();
myTableCell[counter].Controls.Add(myLinkButton);
myTableRow.Cells.Add(myTableCell[counter]);
counter++;
}
panelAr.Controls.Add(new LiteralControl("<hr><b>"+myRow["ar"].ToString() +"</b><bR>"));
panelAr.Controls.Add(myTable);
}
</code>
Nån som har nått förslag? Jag har inga idéer kvar...Sv: Tabellen finns kvar i minnet
Har inte jobbat nåt med DataTables o så men ska du inte tömma "Vecka" varje varv ?
myDataAdapter.Fill(myData,"Vecka");
fyller bara på
Testa att tömma Vecka längst ner i den yttre loopen
Eller kanske ännu hellre : läs in alla veckor oavsett år och kolla
i den inre loopen att posten du är på har rätt år ?
/Johan