Avatar billede brian-johansen Nybegynder
23. august 2006 - 09:32 Der er 10 kommentarer og
2 løsninger

There is no row at position 7, Problemer med datalist

Hej,

Det er sådan at jeg bruger en datalist som jeg henter nogle ting ind fra en database via mit dataset.

Det virker også fint ud over at det sidste object aldrig kan ses, da jeg altid bare for at vide:
There is no row at position 7, eller hvad den højste nu hedder.

Jeg fatter ikke hvad det er der går galt, men det virker som om den henter en row ind der ikke eksistere.

Min datalist ser sådan ud:

<asp:DataList ID="DataList1" runat="server"
            RepeatDirection="Horizontal" DataKeyField="Id" >
         
          <HeaderTemplate>
          </HeaderTemplate>
            <ItemTemplate>
                <a href=model.aspx?id=<%# id %>,<%# Eval("Id") %> ><%#Eval("nr") %></a>
            </ItemTemplate>
        </asp:DataList>

Og jeg henter data til den, på denne måde:
myConn = new SqlConnection(ConfigurationManager.ConnectionStrings["ASPNETDBConnectionString"].ToString());
        string query = "Select * From PS where  sek= '" + id + " '";
        adp = new SqlDataAdapter(query, myConn);
        myConn.Open();
        adp.Fill(ds);
       
       
        myConn.Close();
        DataList1.DataSource = ds;
        DataList1.DataBind();

ER der nogen der kan hjælpen

mvh BRian
Avatar billede mikkel_sommer Nybegynder
25. august 2006 - 11:13 #1
Kunne det være fordi at id'erne i din db starter ved 1 og indekseringen i dataset/datalist starter ved 0.....
Avatar billede brian-johansen Nybegynder
25. august 2006 - 23:11 #2
ja det tænkte jeg også men når jeg prøver at sætte mine værdier til -1 så for jeg bare at vide at der ikke er nogen række på position -1

Så jeg tror ikke at det er der problemet ligger

mvh Brian
Avatar billede snepnet Nybegynder
26. august 2006 - 20:19 #3
Hej Brian.
Det lyder underlig... Er du sikker på at den exception den falder fra den kode du har vist?
Mvh
(Du skal ikke kalde open/close på din forbindelse når du arbejder med en adapter... Det finder den sel ud af).
Avatar billede mikkel_sommer Nybegynder
27. august 2006 - 15:09 #4
Det er jo arrayet som starter på 0 og der vil ikke være noget på plads 0 - 1. Prøv i stedet at trække den ene fra id'erne i databasen.
Avatar billede snepnet Nybegynder
27. august 2006 - 15:28 #5
Er du ikke på model.aspx du får din exception?
Og kan du ikke vise koden derfra?
Mvh
Avatar billede brian-johansen Nybegynder
28. august 2006 - 00:45 #6
Hej,

mikkel_sommer -> grunden til at jeg satte den til -1 var at hvis den troede der var noget på en række 7 så var det måske fordi den kigge på plads 1 arrayet.

Snepnet -> jeg har ikke andet kode til denne funktion end det der er der, men når jeg debugger så kan jeg også se at det er i mit dataset det går galt.

mvh Brian
Avatar billede snepnet Nybegynder
28. august 2006 - 08:19 #7
Hvilket linie fejler den på?
Mvh
Avatar billede brian-johansen Nybegynder
19. september 2006 - 10:53 #8
Jeg fandt en anden løsning, da jeg ikke kunne få dette til og lykkes og jeg var lidt presset i tid.

Tak for hjælpen, ligger i begge lige et svar ?

mvh Brian
Avatar billede snepnet Nybegynder
19. september 2006 - 11:48 #9
Well.... ikke meget værdi i det jeg kom med synes jeg. Du må skrive hvis du tager det op igen.
Mvh
Avatar billede brian-johansen Nybegynder
19. september 2006 - 12:26 #10
Det gør jeg lige.... jeg venter lige på mikkel_sommer så jeg kan acceptere svarende
Avatar billede mikkel_sommer Nybegynder
21. september 2006 - 14:47 #11
Kommer her ... svar :)
Avatar billede brian-johansen Nybegynder
22. september 2006 - 09:20 #12
Jeg siger mange tak.

mvh Brian
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester