Imam GridView na koji kacim tabelu dataSet-a kao data source:
Code:
<asp:GridView id="grdBooks"
AutoGenerateColumns="false"
AllowPaging="true"
AllowSorting="true"
PageSize=10
CssClass="grid"
OnPageIndexChanging="grdBooks_PageIndexChanging"
OnSorting="grdBooks_Sorting"
style="border-color:white" runat="server" >
<Columns>
<asp:TemplateField ItemStyle-CssClass="gridRowUltraLargeWidthBold"
HeaderStyle-CssClass="gridRowUltraLargeWidthBold">
<ItemTemplate>
<asp:HyperLink ID="hlBookDetails" NavigateUrl=<%# "~/BookDetails.aspx?id=" + Eval("BookID") %>
Text=<%# Helper.GetShortDisplay((string)Eval("Title"), 26) %>
ToolTip=<%# GetScratchDisplay((int)Eval("BookID")) %>
runat="server" />
...
code behind:
DataSet books = booksService.SearchBooks(...)
this.grdBooks.DataSource = new DataView(books.Tables[0]);
this.grdBooks.DataBind();
<asp:GridView id="grdBooks"
AutoGenerateColumns="false"
AllowPaging="true"
AllowSorting="true"
PageSize=10
CssClass="grid"
OnPageIndexChanging="grdBooks_PageIndexChanging"
OnSorting="grdBooks_Sorting"
style="border-color:white" runat="server" >
<Columns>
<asp:TemplateField ItemStyle-CssClass="gridRowUltraLargeWidthBold"
HeaderStyle-CssClass="gridRowUltraLargeWidthBold">
<ItemTemplate>
<asp:HyperLink ID="hlBookDetails" NavigateUrl=<%# "~/BookDetails.aspx?id=" + Eval("BookID") %>
Text=<%# Helper.GetShortDisplay((string)Eval("Title"), 26) %>
ToolTip=<%# GetScratchDisplay((int)Eval("BookID")) %>
runat="server" />
...
code behind:
DataSet books = booksService.SearchBooks(...)
this.grdBooks.DataSource = new DataView(books.Tables[0]);
this.grdBooks.DataBind();
Siguran sam da books dataSet ima BookID kolonu, jer je proizvod jednostavnog select-a iz storovane procedure.
Kad se prvi put loaduje strana, grid se lepo binduje i prikaze prvih 10 rezultata. Na paging se desava sledeca greska:
System.Web.HttpException
DataBinding: 'System.Data.DataRowView' does not contain a property with the name 'BookID'.
Da li neko moze da nasluti sta bi bio problem? Unapred hvala.
kopca