21. maj 2006 - 12:23Der er
27 kommentarer og 1 løsning
Gridview datasource
Hej
Jeg har læst mig til at man med fordel kan bruge en SqlDataSource til at binde en GridView til sin db. Når jeg så læser om SqlDataSource virker det som om jeg er nødt til at fortælle den min connection streng. Altså skrive den i koden. Kan det virkelig være rigtigt. Kan jeg ikke give den en åben connection?
Du kan skrive den i din konfigurationsfil helt som du plejer, og der er endda direkte adgang til connectionstrings-sektionen. Hvis du bruger VS2005 eller VWD kan du åbne din database i din server explorer, og så bare trække en tabel direkte ind på en form... Så kan du se hvilke muligheder der er. F.eks. kan du se, at den henter en connectionstring fra din konfigurationsfil ud deklerativt vha. et <%$ expression (hvilket er en nyhed i 2.0). Mvh
Det virker ret smart med de muligheder det giver. Den kode der kommer ud af det, er da ekstremt grim, ik? Sql statements i html koden. Det er jo næsten grimmere end klassisk asp...
Skal vi bare vænne os til det, eller finder de på noget andet?
Der er ingen der dikterer at du skal lægge din sql i aspx-filen... Du kan også henvise til nogle stored procedures, eller endnu bedre. Bygge dig nogle klasser der kan give dig det data du skal bruge, og så anvende en objectdatasource og angive på den hvilke metoder der skal anvendes til select/insert/update/delete... Det giver en rimelig ok adskildelse. Mvh
Jeg har dog et andet problem med min gridview. Når jeg opdaterer en række imens jeg kører localhost (VS2005) virker det fint, men når jeg smider det på serveren opdaterer den ingenting.
Det er en SqlServer 2000. Nej ikke det der ligner en fejl, den reagerer ligesom hvis man havde glemt sin !IsPostBack, men det virker fint localhost, på den samme SqlServer...
Vældig underligt... Prøv engang at lav en ny testside. Bare træk tabellen ind på formen via serverexploreren, og sæt div properties så du kan editere mv. ... Kunne være at rart at vide om det så virker. Mvh
Nu lavede jeg en ny aspx fil,. trak en table ind fra server exploren, satte de samme properties som jeg ellers bruger (delete, paging, editing) og det virkede glimrende, opdaterede databasen.
Så smed jeg de 3 filer over på serveren (test.aspx, test.aspx.cs, web.config) og den opdaterer ikke, og giver ingen fejl.
Jeg mente bare at du skulle prøve at generere siden igen (altså den der fejler) - evt. bare ved at trække den ind på en form. Der er sikkert blot et eller andet issue med den. Mvh
Har jeg prøvet nu,. uanset hvordan jeg gør det kan jeg ikke få den til at opdatere når den ligger på webhotellet, og jeg kan ikke få den til at lade være når jeg gør det fra min egen iis eller vs2005.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.