Subsonicフレームワークでカスタムページングオプション(参照:http ://subsonicproject.com/querying/webcast-using-paging/ )を使用しているデータグリッドがあります。
状態でデータをフィルタリングするドロップダウンもあります。これは、addwhere呼び出しを介してクエリに追加されます。
データは、州のASC、次に市のASCの順に並べられます。
状態が選択されていないため、句にaddwhereが追加されていない場合、データは正常に順序付けられているように見えます。ただし、ページ付けを開始するのに十分なレコードがある状態を選択すると、一部のレコードが順不同で表示されます。また、現在のページの最後の数レコードがグリッドの中央のどこかに表示されているように見えることにも気づきました。
loadgridへのコードスニペット:
Dim qry As New SubSonic.Query( {myTableSchema} )
If ddlStates.SelectedValue.Trim.ToLower <> "all states" Then
qry.AddWhere("state", ddlStates.SelectedValue.Trim)
End If
qry.ORDER_BY("state", "ASC").ORDER_BY("city", "ASC")
qry.PageSize = ddlDisplay.SelectedValue
qry.PageIndex = pageNumber
gvOrganizers.DataSource = qry.ExecuteDataSet
gvOrganizers.DataBind()
状態が選択され、データが1ページしかない場合、問題は発生しないようです。デフォルトのddlDisplay設定は1ページあたり100レコードですが、50または25を選択してもエラーが表示されます。
Subsonic2.1.0.0の使用