qdos Skrevet 17. september 2007 Skrevet 17. september 2007 En spørring mot en database gir følgende resultat: FlyttetADato | FlyttetASted | FlyttetBDato | FlyttetBSted I stedet for å binde resultatet til en grid som vanlig, ønsker jeg å plassere resultatene i to kolonner, slik at FlyttetADato og FlyttetBDato legges i samme kolonne, og det samme med FlyttetSted, slik: FlyttetDato | FlyttetSted Hvordan kan jeg styre en slik visning. Eneste jeg har resonnert med frem til er at AutoGenerateColumns ikke kan være aktivert. Noen tips til hvilke egenskaper jeg må se på?
qdos Skrevet 17. september 2007 Forfatter Skrevet 17. september 2007 Omgikk problemet ved å lage et nytt VIEW som kjører en UNION ALL, og presenterer resultatet i tre kolonner, hvorav den ene kolonnen er primærnøkkelen. Problemet var at jeg ikke ønsket å vise primærnøkkelen, noe jeg oppnådde ved å sette GridView til Databound, og spesifisere de to kolonnene jeg ønsket å vise. Nå er problemet at dersom en primærnøkkel ikke har noen FlyttetDato eller FlyttetSted, så vises det tomme rader i stedet for. Jeg ønsker ikke å vise noen rader som er tomme, men jeg skjønner ikke hvordan jeg kan skjule tomme rader i dette tilfellet.
qdos Skrevet 17. september 2007 Forfatter Skrevet 17. september 2007 Føler at jeg snakker med meg selv, men jeg fant omsider en løsning på dette også, uten at jeg vet om denne var så elegant. Laget en prosedyre som starter når med GridView OnRowDataBound, som kun består av If e.Row.Cells(0).Text = " " Then e.Row.Visble = False Slet mest med å finne ut at Text(.ToString) ikke skulle være Null. Skjønner fortsatt ikke hvorfor denne ikke er Null, men det fungerer i alle fall nå.
GeirGrusom Skrevet 17. september 2007 Skrevet 17. september 2007 Det er fint du skriver løsningene, for det er altfor mange som bare sier "edit: fant det ut" Men er feltet merket som mandatory/not null i databasen?
qdos Skrevet 18. september 2007 Forfatter Skrevet 18. september 2007 Ja feltet er NOT NULL i databasen, og hvis jeg spør rett i databasen vises tomme felter som NULL. Skjønner derfor ikke hvorfor det plutselig er . Tror det kan ha med et databound gridview i stedet for et hvor kolonnene blir autogenerert.
GeirGrusom Skrevet 18. september 2007 Skrevet 18. september 2007 Hvis det er NOT NULL vil du jo heller aldri oppleve et tomt felt, siden SQL setningen SET MittTekstFelt = NULL ville gitt feil. Men det er rart at databasen da sier det er NULL, hvis feltet er markert NOT NULL.... Men er jo en snedig verdi, ville ikke "" fungert også da? Men Gridview saken burde strengt tatt ikke oversatt NULL til .... Merkvürdich
qdos Skrevet 18. september 2007 Forfatter Skrevet 18. september 2007 Nei, beklager. Gikk litt fort der. Feltet tillater NULL, og det var derfor jeg forventet at alle verdier som ble returnert var NULL dersom de ikke hadde en verdi. Måtte liste ut verdien med .tostring for å se at det var i stedet for NULL, og det er den oversettelsen jeg ikke skjønner. Kan være pga riktig visning i HTML. Ved databound kan man riktignok velge hva som skal vises dersom verdien er NULL, og et alternativ kan være å erstatte verdien NULL med teksten NULL (eller hva som helst annet). "" fungerte ikke heller.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå