Почему мой SelectCountMethod не вызывается?
Я связываю GridView
к ObjectDataSource
,
Я ожидаю m_ObjectDataSourceGrid_Selected
метод стрельбы дважды, один раз для выбора и снова для подсчета, но срабатывает только один раз.
В чем дело?
<asp:GridView ID="m_GridViewDocClasses" runat="server" AutoGenerateColumns="False"
DataSourceID="m_ObjectDataSourceGrid"
AllowSorting="true">
<Columns>
<asp:HyperLinkField DataNavigateUrlFields="Id" DataNavigateUrlFormatString="DocClass.aspx?DocClassId={0}"
Text="Edit" />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Description" HeaderText="Description" SortExpression="Description" />
</Columns>
</asp:GridView>
</div>
<asp:ObjectDataSource ID="m_ObjectDataSourceGrid" runat="server" SelectMethod="GetDocClasses"
TypeName="SouthernCompany.Generation.SPORT.Business.DocClassBL" OnObjectCreating="m_ObjectDataSourceGrid_ObjectCreating"
OnSelected="m_ObjectDataSourceGrid_Selected" SelectCountMethod="GetDocClassesCount"
SortParameterName="sort">
<SelectParameters>
<asp:Parameter DefaultValue="" Name="sort" Type="String" />
<asp:Parameter DefaultValue="0" Name="startRowIndex" Type="Int32" />
<asp:Parameter DefaultValue="0" Name="maximumRows" Type="Int32" />
<asp:Parameter DefaultValue="0" Name="docClassId" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
2 ответа
Вы не можете, потому что вы не назначили allowpaging, поставьте эти три:
AllowPaging="true"
AllowSorting="true"
PageSize="25"
AllowPaging необходим для вызова SelectCountMethod.
удалить позволяет сортировку, если не нужно.
Ваш SelectCountMethod получает те же параметры, что и SelectMethod? Есть два способа сделать SelectCountMethod приемлемым: без какого-либо параметра "()" или с теми же параметрами, что и у SelectMethod, кроме параметров Sorting и Paging.