のページング・パラメータを必要とする:私は手動でgetDataメソッドのパラメータmaxRow、startRow属性を追加のObjectDataSourceは、私はこのようなObjectDataSourceコントロールを有するSelectCountMethod
public class BusinessObject
{
public someTyp[] getData(int maxRow, int startRow)
{ /* some code */ }
public int howMuch()
{ /* some code */ }
}
その:
<asp:ObjectDataSource ID="ObjectDataSource2" runat="server" EnablePaging="True"
MaximumRowsParameterName="maxRow" SelectCountMethod="howMuch"
SelectMethod="getData" StartRowIndexParameterName="startRow"
TypeName="BusinessObject">
</asp:ObjectDataSource>
このようなクラスてBusinessObject GridViewでうまく動作します。 次に、ObjectDataSourceビジュアルデザイナーの "Configure Data Source ..."タスクを使用しています。 SELECTのオプションがある: のgetData(のInt32 maxRow、のInt32 startRow属性)、someTyp [] を返し、それはOKですが、次のステップは、これらのパラメータを設定することで、その結果はSelectParametersはObjectDataSourceのに追加されている。
<SelectParameters>
<asp:Parameter Name="maxRow" Type="Int32" />
<asp:Parameter Name="startRow" Type="Int32" />
</SelectParameters>
これは動作しません。パラメータがInt32 maxRow、Int32 startRowのhowMuch()メソッドが存在しないことを示す例外が発生します。
私の質問は、MaximumRowsParameterNameとStartRowIndexParameterNameとして設定されているにもかかわらず、なぜパラメータmaxRow、startRowがSelectCountMethodのパラメータリストから除外されないのかです。ページングパラメータとして設定されているので省略してはいけませんか?
ありがとうございました。