2015-11-07 7 views
0

Мне недавно пришлось перекомпилировать чей-то старый сайт C#/ASP/.Net (файлы указывают, что он был запущен более 9 лет назад), чтобы выполнить изменения на сайте. Это копия разработки на том же сервере, что и исходный сайт.ASP datagrid не отображает все элементы

Я не могу получить datagrid для отображения всех элементов на странице подтверждения заказа. Я уверен, что правильные данные передаются в datagrid (поскольку я распечатал эту строку до того, как данные привязаны, но она отображает только 2 из трех элементов. Однако код работает на старой компиляции!

Здесь C# код: в файле .aspx.cs:

SqlDataReader basketReader = User.GetBasket(User.GetUserID(Page.User.Identity.Name)); 

if (basketReader.Read()) 
{ 
    orderDG.DataKeyField = "ItemCode"; 
    orderDG.DataSource = basketReader; 
    orderDG.DataBind(); 
    basketReader.Close(); 
} 
else 
{ 
    Response.Redirect("~/Orders.aspx", false); 
} 

Вот код DataGrid в файле .aspx:

<asp:datagrid id="orderDG" runat="server" width="100%" autogeneratecolumns="False" GridLines="none">            
    <headerstyle CssClass="dataHeading"></headerstyle> 
    <itemstyle CssClass="dataTxt"></itemstyle> 
    <AlternatingItemStyle BackColor="#F9F9FF" /> 
    <columns> 
     <asp:boundcolumn datafield="ItemCode" headertext="Item Code"></asp:boundcolumn> 
     <asp:boundcolumn datafield="Description" headertext="Description"></asp:boundcolumn> 
     <asp:boundcolumn datafield="Quantity" headertext="Quantity"></asp:boundcolumn> 
    </columns> 
</asp:datagrid> 

Любые идеи

ответ

1

Я надеваю Не думайте, что вы должны вызвать basketReader.Read() перед привязкой. Попробуйте использовать это вместо:

SqlDataReader basketReader = User.GetBasket(User.GetUserID(Page.User.Identity.Name)); 

if (basketReader.HasRows) 
{ 
    orderDG.DataKeyField = "ItemCode"; 
    orderDG.DataSource = basketReader; 
    orderDG.DataBind(); 
    basketReader.Close(); 
} 
else 
{ 
    Response.Redirect("~/Orders.aspx", false); 
} 
+0

Большое спасибо, решена моя ошибка :) –

Смежные вопросы