Click to See Complete Forum and Search --> : SqedlDataReader - no data is being displayed


bharadwajrv
May 28th, 2007, 11:59 AM
Hi...

SqlDataReader holds the data from MS SQL - after it is bind to DataList, Repeater web-control i'm using the same sqlDataReader object to bound to gridview control, but no data is being displayed in gridview control..

if sqldatareader object is first bind to gridview, data is shown only in grid and not in DataList or Repeater control...

i.e. either data is being displayed in DataList/Repeater or gridview

Any problem in code?
Thanks in adv

ASPX code

<asp:repeater id=repNews runat="server">
<HeaderTemplate>
Title
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Title") %>
</ItemTemplate>
</asp:repeater>

<asp:datalist runat="server" id=dlNews>
<ItemTemplate>
<%# Eval("Title")%>
</ItemTemplate>
</asp:datalist>

<asp:gridview id=gvNews runat="server"></asp:gridview>





page behind code

SqlDataReader drNews;
SqlCommand sqlCmd = new SqlCommand();
sqlCmd.CommandType = CommandType.StoredProcedure;
sqlCmd.CommandText = "GetNewsList";

sqlCmd.Connection = new SqlConnection();
sqlCmd.Connection.ConnectionString = ConfigurationManager.AppSettings["SQLCon"].ToString();
sqlCmd.Connection.Open();
drNews = sqlCmd.ExecuteReader();


dlNews.DataSource = drNews;
dlNews.DataBind();


repNews.DataSource = drNews;
repNews.DataBind();

gvNews.DataSource = drNews;
gvNews.DataBind();

mcmcom
May 29th, 2007, 03:09 PM
have you debugged this? are you getting any errors? Can you share them with us if you are?

mcm

TheCPUWizard
May 29th, 2007, 03:23 PM
Yes, a DateReader is a forward only one shot reader. It can not be bound to multiple entities (the first one reads all the data :eek: )