Mossberg Posted February 25, 2005 Share Posted February 25, 2005 Hallå hallå, Har denna kod: DataTable dt = new DataTable(); DataColumn column; column = dt.Columns.Add("PicDate",typeof(string)); column = dt.Columns.Add("Pic",typeof(string)); column = dt.Columns.Add("PicText",typeof(string)); while(Read.Read()) { if(Read["Pic1"].ToString() != "") dt.Rows.Add(Read["Date"].ToString(),Read["Pic1"].ToString(),Read["Pic1Text"].ToString()); if(Read["Pic2"].ToString() != "") dt.Rows.Add(Read["diary_Date"].ToString(),Read["Pic2"].ToString(),Read["Pic2Text"].ToString()); if(Read["Pic3"].ToString() != "") dt.Rows.Add(Read["Date"].ToString(),Read["Pic3"].ToString(),Read["Pic3Text"].ToString()); } DataView dv = new DataView(dt); När jag kör denna kod lokalt funkar allt, men när jag lägger upp den på servern så får jag felet: No overload for method 'Add' takes '3' arguments ..för: dt.Rows.Add(Read["Date"].ToString(),Read["Pic1"].ToString(),Read["Pic1Text"].ToString()); Jag kör på ASP.NET 2.0 lokalt, men servern på nätet har 1'an, hur kan jag skriva om denna för att den ska funka även där? Poäng till lösning/Henrik Link to comment Share on other sites More sharing options...
Anjuna Moon Posted February 25, 2005 Share Posted February 25, 2005 Du måste lägga kolumnvärdena i en array istället och använda denna som argument till .Add: object[] rowVals = new object[3]; rowVals[0]=Read["Date"].ToString(); rowVals[1]=Read["Pic3"].ToString(); rowVals[2]=Read["Pic3Text"].ToString()); dt.Rows.Add(rowVals); Link to comment Share on other sites More sharing options...
nop4e71 Posted February 25, 2005 Share Posted February 25, 2005 Lägg till nya rader mha en ItemArray som Anjuna Moon föreslår, eller använd följande: DataRow newRow = dt.NewRow(); newRow[fält] = värde; ... ... dt.Rows.Add(newRow); Om du ska lägga till många rader och har komplexa beroenden är det en bra idé att använda BeginLoadData och EndLoadData för att snabba upp det hela litet. / Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.