У меня есть объектный источник данных и вид сетки, настроенный, как показано ниже (с использованием VS2008 с .NET3.5):
<asp:ObjectDataSource ID="odsMainData" runat="server" EnablePaging="True" OldValuesParameterFormatString="original_{0}"
SelectMethod="GetMainData" TypeName="ErrorViewer.Model.ErrorViewModel"
SelectCountMethod="CountMainData">
<SelectParameters>
<asp:Parameter Name="maximumRows" Type="Int32" />
<asp:Parameter Name="startRowIndex" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:GridView ID="grdMainData" runat="server" AllowPaging="True" DataSourceID="odsMainData" PageSize="15" AllowSorting="True">
</asp:GridView>
В коде позади нет ни обработчиков событий, ни другого кода для вида сетки илиисточник данных
Итак, в базовом классе «ErrorViewModel» есть методы: public DataTable GetMainData () {var dt = provider.MainData ();myMainData = dt;возврат дт;}
public DataTable GetMainData(int maximumRows, int startRowIndex)
{
var dt = provider.MainData();
myMainData = dt;
return dt;
}
public long CountMainData()
{
var count = provider.GetMainDataCount();
return count;
}
public long CountMainData(int maximumRows, int startRowIndex)
{
var count = CountMainData();
return count;
}
Что я хочу: пользовательская подкачка на стороне сервера.В чем проблема: Когда я устанавливаю EnablePaging = true в источнике данных, данные не будут отображаться в виде сетки.Если для параметра EnablePaging установлено значение false, отображаются данные.Как вы можете видеть, два метода для получения данных будут работать точно так же.Отладка показывает, что при использовании EnablePaging = true возвращаются строки.Еще одна странная вещь (использование EnablePaging = true): в GetMainData MaximumRows установлено в 15 и startRowIndex в 0, в CountMainData MaximumRows установлено в 0 и startRowIndex в 0
Я реализовал этот тип пользовательской подкачки в другом проектеи сделал ту же конфигурацию - но на этот раз он пребывает в этом странном поведении.Что не так в моей реализации?Я только что забыл одну маленькую настройку?Есть предложения?