Edit: Feb 7, 2012 - Оказывается, ключевой параметр исчезает из ссылки GridView Edit и после сортировки, так что в конце концов он не кажется пейджером, но проблема сохраняется ... любые идеи оченьдобро пожаловать.
У меня есть приложение Asp.Net Dynamic Data.Он использует стандартный GridViewPager.aspx в Custom List.aspx, который размечен так:
<asp:GridView ID="GridView1" runat="server" DataSourceID="GridDataSource" EnablePersistedSelection="True" CssClass="DDGridView" HeaderStyle-CssClass="th" RowStyle-CssClass="td" CellPadding="6" AllowSorting="True" AllowPaging="True" PageSize="3"
OnRowDataBound="GridView_OnRowDataBound" OnRowDeleting="GridView_OnRowDeleting">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LoginView ID="LoginView1" runat="server">
<RoleGroups>
<asp:RoleGroup Roles="admin">
<ContentTemplate>
<asp:DynamicHyperLink ID="EditLink" runat="server" Action="Edit" Text="edit" />
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Delete" Text="delete" OnClientClick='return confirm("Are you sure you want to delete this item?");' />
</ContentTemplate>
</asp:RoleGroup>
</RoleGroups>
</asp:LoginView>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<PagerStyle CssClass="DDFooter" />
<PagerTemplate>
<asp:GridViewPager runat="server" />
</PagerTemplate>
<EmptyDataTemplate>
There are currently no items in this table.
</EmptyDataTemplate>
</asp:GridView>
На странице 1 списка все хорошо.Представленная ссылка для редактирования включает в себя ?key=xxxxx
, и форма редактирования открывается для правильной записи.
Однако после того, как мы выполнили страницу со страницы 1, ссылка для редактирования, отображаемая в каждой строке, не имеет параметра 'key' и формы редактированиявсегда открывается первой строкой в базе данных.
Я затрудняюсь объяснить это или даже где искать.К любому событию, связанному с правкой DynamicHyperlink или GridviewPager, не добавлен пользовательский код.
Кто-нибудь сталкивался с этим или есть какие-либо предложения относительно возможных проблем?