[asp.net/c#] Geneste repeaters, van buitenste data uitlezen

Pagina: 1
Acties:

  • shades
  • Registratie: September 2001
  • Laatst online: 06-03 10:48
Ik weet het, het onderwerp is wat brak dus zal ik e.e.a. verduidelijken:
Aan de hand van dit artikeltje ben ik wat aan het stoeien met geneste repeaters. Errug leuk al zeg ik het zelf.

Nu is het voor mij handig, even te refereren aan het artikel, om de regel <%# DataBinder.Eval(Container.DataItem, "receivedYear")%> die staat in de buitenste repeater rptMonthSummary ook te plaatsen binnen de rptDailySummary (geneste) repeater. Ik had al verwacht dat ik een foutmelding zou krijgen: DataBinder.Eval: 'System.Data.DataRowView' does not contain a property with the name receivedYear. Toch moet dit mogelijk zijn. Met de "Relations.Add" ben je gewoon relaties aan het leggen en als je het vertaald naar sql dan kan je ik in de select gewoon deze kolom opvragen.

Iemand een idee hoe dit moet ?

https://k1600gt.nl


  • joopst
  • Registratie: Maart 2005
  • Laatst online: 01-10-2024
het probleem is dat de 'Container.DataItem' een ander item is omdat de binnenste repeater een andere datasource heeft.
Als je gegevens wilt gebruiken die nu niet in je datasource zitten, kan je ze het beste in je datasource erbij stoppen.
In het voorbeeld wordt gebruik gemaakt van een dataview. Wellicht is het mogelijk deze aan te passen zodat de door jou gevraagde gegevens hierin zijn opgenomen.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 27-04 18:17

gorgi_19

Kruimeltjes zijn weer op :9

Je kan toch naar de parent van een container gaan?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • shades
  • Registratie: September 2001
  • Laatst online: 06-03 10:48
joopst schreef op dinsdag 20 september 2005 @ 08:59:
het probleem is dat de 'Container.DataItem' een ander item is omdat de binnenste repeater een andere datasource heeft.
Als je gegevens wilt gebruiken die nu niet in je datasource zitten, kan je ze het beste in je datasource erbij stoppen.
In het voorbeeld wordt gebruik gemaakt van een dataview. Wellicht is het mogelijk deze aan te passen zodat de door jou gevraagde gegevens hierin zijn opgenomen.
Dat zou wel kunnen maar dan moet ik in de codebehind weer dingen gaan zitten doen die volgens mij dus helemaal niet nodig zijn.. Waarvoor haal je slecht de 2 tabellen binnen en legt je relaties aan via dataset.relation.add ? De informatie is.
gorgi_19 schreef op dinsdag 20 september 2005 @ 09:04:
Je kan toch naar de parent van een container gaan?
Ik heb lopen goegelen maar ik kan het niet vinden
bv: ((DataRow)Container.DataItem).GetParentRow("relatienaam")["veldnaam"] werkt niet, dan krijg ik "Specified cast is not valid." Het oogt wel goed met die GetParentRows.

Ik ga nog wel even verder zoeken.. <%@ Import Namespace="System.Data" %> is trouwens reeds toegevoegd want dat zie ik in bijna alle voorbeelden..

Misschien ook handig om te vermelden: ik bind de geneste repeaters via OnItemDataBound.

[ Voor 14% gewijzigd door shades op 20-09-2005 14:21 ]

https://k1600gt.nl


  • shades
  • Registratie: September 2001
  • Laatst online: 06-03 10:48
Ik heb een goed voorbeeld: http://tech.hawkfield.be/archives/000030.html
Het is alleen niet mogelijk om data uit repeater1 te lezen in repeater3 en dat is wat ik wil. :|

Ik heb net de aspx omgebouwd naar DataSource=<..> maar dan ontstaat er een sorteenprobleem (afgezien van het feit dat ik rep1 niet kan benaderen vanuit rep3. In het OnItemDataBound event doe ik nog een sorteeractie.. :/

[ Voor 40% gewijzigd door shades op 20-09-2005 15:18 ]

https://k1600gt.nl