Toinen artikkeli...toivottavasti...jos pääsen sen ääreen...jäsenten metodit vastaan OnItemDataBound pesittyjen tietoluettelojen valvontaan (Suomi (Finnish))

Toinen artikkeli...toivottavasti...jos pääsen sen ääreen...jäsenten metodit vastaan OnItemDataBound pesittyjen tietoluettelojen valvontaan

Friday, 20 February 2004

//

Less than a minute

Hyvin yleinen kysymys ASP.NET-foorumit"Miten pesin yhden Toistin (tai DataList tai DataGrid) toisen sisälle?" No, tavallinen varastovastaukseni oli käyttää OnItemDataBound -tapahtumaa ja käyttää sitten FindControlia () löytääkseni Toistin mallin sisältä ja asettaakseni sen tietolähteen lapsinäkymään - sitten vain DataBindiä...Viime aikoina olen kuitenkin vastustanut tätä - osittain Farhan Muhammadin ja Matt Milnerin kirjassa (ei löydä linkkiä tarkempaan kirjaan), mutta tämäSekin on aika hyödyllinen), lähinnä se edellyttää jäsenmetodia. Sen sijaan, että yhdistät tapahtuman, määrität lapsitoistolaitteen tietolähteen seuraavasti (esimerkiksi)

<Asp:Repeater id=FormatsRepeater DataSource="<%# GetFormats(Container.DataItem)%>Runat="Server">

, yhdessä muiden mallien kanssa jne. lapsitoistolle. Sitten koodilla (tavallisesti takana oleva koodi) tehdään näin:

Public DataView GetFormats (kohde DataItem) { DataRowView di = DataItem kuin DataRowView; if(di!=null) Return di.CreateChildView ("JobCount") muuta palautus nollaan; }

  • Niin.BlogJet Ei ole hyvä antaa minun muokata HTML:ää - lajittelen tämän myöhemmin...joka tapauksessa, kuten näette, hyvin yksinkertainen koodi (mainittakoon, että käytän DataSetiä, jossa on Tietosuhde "JobCount". Mikä on tulos kaikesta tästä...no, Member Method -versio sekä (IMHO) on paljon helpompi kirjoittaa kuin ItemDataBound - on myös paljon nopeampi - joissakin testeissä, kaksi kertaa nopeampi! Toivon, että kirjoitan tästä isomman palan, jossa on joitakin tilastoja, jotta voin todistaa kantani - jos pääsen siihen käsiksi :-)
Finding related posts...
logo

© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.