Jag bloggar numera på http://blog.dileno.com ».

Prenumerera på RSS

HeaderTemplate och FooterTemplate renderas trots att en Repeater är tom

Ett problem jag stötte på i ett projekt här om veckan var att HTML-kod jag skrivit i HeaderTemplate och FooterTemplate för en Repeater-kontroll renderades, fast Repeatern inte innehöll någon data.

Jag gjorde lite efterforskningar och kom fram till följande:

  • Om det finns en datakälla för Repeatern, så renderas innehållet i HeaderTemplate och FooterTemplate, fast datakällan inte har någon data.
  • Om det inte finns en datakälla, det vill säga datakällan returnerar ett nullvärde, så renderas inte Repeatern över huvud taget.

Lösning på problemet: kolla att datakällan existerar och att den har fler än noll poster i sig:

if (myList != null && myList.Count>0)
{
	rptListing.DataSource = myList;
	rptListing.DataBind();
}

Uppdatering: Använder du exempelvis en SqlDataReader så får du kolla om den booleska egenskapen HasRows är sann i stället för att använda Count.

Till sidhuvudet

Clicky Web Analytics