Både DataSource og DataSourceID er defineret for ...
Hej EksperterSidder med et problem, der kræver hjælp så derfor dette indlæg.
Jeg har et elev projekt, hvor der er lavet to repeatere. Den ene repeater nested i den anden. Den første repeater henter Blogs fra en SQL Database. Baseret på det BlogID, der bliver hentet, skal den anden repeater "hente" billeder fra en anden tabel i SQL databasen knyttet til det specifikke BlogID.
For den første repeater er der lavet en OnItemDataBound event handler, der skal stå for at hente billederne. Denne metode er lavet som følger :
protected void RepeaterBlog_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
RepeaterItem item = e.Item;
int Blog_ID;
if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
{
Repeater RepeaterPictures_CSharp = (Repeater) RepeaterBlog.FindControlRecursive("RepeaterPictures");
DataRowView drv = (DataRowView)item.DataItem;
Blog_ID = (int)drv.Row.ItemArray[0];
RepeaterPictures_CSharp.DataSource = PicturesForCurrentBlog.GetPicturesByBlogID(Blog_ID);
RepeaterPictures_CSharp.DataBind();
}
}
Problemet er, at når kodelinjen (RepeaterPictures_CSharp.DataBind();) eksekveres, fremkommer denne fejlmeddelelse : Både DataSource og DataSourceID er defineret for 'RepeaterPictures'. Fjern en af definitionerne.
RepeaterPictures er den nestede repeater.
Nogen gode ideer til hvordan denne fejl afhjælpes. Eller hvordan data kan hentes ud på en anden måde. Kravet er at de billeder, der hører til en specifik Blog, skal stå sammen med de øvrige informationer for den pågælende Blog. Derfor også designet med den nestede repeater.