Avatar billede karl-koder Nybegynder
30. november 2007 - 10:48 Der er 8 kommentarer og
1 løsning

Samme data i gridview ?

Hejsa,

Jeg undre mig lidt over at jeg får vist de samme data i et gridview. Forstået på den måde at den sidst tilføjet record bliver vist igen og igen.

Her følger lidt kode :

Stored procedure
Select * From tbl_Sites Order By Id Desc

Metode der trækker data
public override List<SiteItem> GetAllSites()
{
    List<SiteItem> list = new List<SiteItem>();
    using (SqlConnection Conn = new SqlConnection(connectionString()))
    {
        Conn.Open();
        SqlCommand cmd = new SqlCommand("Site_GetAll", Conn);
        cmd.CommandType = CommandType.StoredProcedure;
        SqlDataReader dr = cmd.ExecuteReader();
        SiteItem item = new SiteItem();
        while (dr.Read())
        {
            item.Id = (int)dr["Id"];
            item.Headline = (string)dr["Headline"];
            item.Content = (string)dr["Content"];
            item.AddDate = (DateTime)dr["AddDate"];
            item.EditDate = (DateTime)dr["EditDate"];
            item.AddBy = (int)dr["AddBy"];
            item.EditBy = (int)dr["EditBy"];
            item.Hits = (int)dr["Hits"];
            list.Add(item);
        }
        Conn.Close();
    }
    return list;
}

Gridview og datasource
<asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" AutoGenerateColumns="False">
    <Columns>
        <asp:BoundField DataField="Id" HeaderText="Id" SortExpression="Id" />
        <asp:BoundField DataField="Headline" HeaderText="Headline" SortExpression="Headline" />
        <asp:BoundField DataField="Content" HeaderText="Content" SortExpression="Content" />
        <asp:BoundField DataField="AddDate" HeaderText="AddDate" SortExpression="AddDate" />
        <asp:BoundField DataField="EditDate" HeaderText="EditDate" SortExpression="EditDate" />
        <asp:BoundField DataField="AddBy" HeaderText="AddBy" SortExpression="AddBy" />
        <asp:BoundField DataField="EditBy" HeaderText="EditBy" SortExpression="EditBy" />
        <asp:BoundField DataField="Hits" HeaderText="Hits" SortExpression="Hits" />
    </Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="GetAllSites" TypeName="Newage.Module.Sites.Site"></asp:ObjectDataSource>

Jeg ved ikke om jeg overser noget her, men jeg tror jeg har stirret mig lidt blind på det ;o)
Avatar billede neoman Novice
30. november 2007 - 11:32 #1
"den sidst tilføjet record bliver vist igen og igen" hvad betyder det ?

1. Du tilføjer en record - og dit gridview bliver fyldt med denne record ?
2. Du tilføjer en record - og så nægter den at tage flere men kun viser den sidste hver gang ?
3. Noget helt tredje ?

Har du noget code-behind som også laver noget med enten dine data eller dine kontroller ?
Avatar billede neoman Novice
30. november 2007 - 11:34 #2
Eller har du lavet noget caching i din ObejctDataSource ?
Avatar billede karl-koder Nybegynder
30. november 2007 - 11:36 #3
Jeg mener at hvis jeg har 50 records så viser den 50 rækker men med den samme record.

Og nej min klasse har ikke nogen cache metode endnu, så det virker noget underligt.
Avatar billede erikjacobsen Ekspert
30. november 2007 - 11:39 #4
Du skal nok flytte
  SiteItem item = new SiteItem();
ind i din while
Avatar billede neoman Novice
30. november 2007 - 11:46 #5
Jeg kan ikke umiddelbart se noget.

Lige for at afklare det - du har 50 forskellige records i din DB, men det du ser i dit gridview er record #50 vist 50 gange ?
Avatar billede neoman Novice
30. november 2007 - 11:46 #6
tihi - erikjacobsen har fat i det rigtige :)
Avatar billede karl-koder Nybegynder
30. november 2007 - 12:33 #7
Det er da det jeg skal Hr. Jacobsen Dooooohhhhhh

Og jeg har i samme klasse ind til flere metoder hvor mit item ligger i loopen ;o)

Smid et svar
Avatar billede erikjacobsen Ekspert
30. november 2007 - 12:41 #8
Jeg samler slet ikke på point, tak.
Avatar billede karl-koder Nybegynder
30. november 2007 - 14:47 #9
Ok så nakker jeg dem da bare igen ;o)
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