3

我正在使用 ObjectDataSource 进行排序/分页/过滤,如下所示:

        <asp:ObjectDataSource 
                ID="odsCompaniesIndex" runat="server" EnablePaging="true"  
                   SelectMethod="GetCompaniesSubset" 
                   StartRowIndexParameterName="startRowIndex" 
                   MaximumRowsParameterName="maximumRows"
                   SelectCountMethod="GetCompaniesCount" 
                   SortParameterName="sortExpression" 
                   TypeName="Company">
        <SelectParameters>
            <asp:ControlParameter ControlID="ddlStatus" 
                 ConvertEmptyStringToNull="true" 
                 DbType="Boolean" PropertyName="SelectedValue" Name="status" />
        </SelectParameters>
    </asp:ObjectDataSource>

使用 ObjectDataSource 的 gridview:

        <asp:GridView ID="gvCompanyIndex" AutoGenerateColumns="true" runat="server" DataSourceID="odsCompaniesIndex"
        AllowPaging="true" DataKeyNames="company_id" AllowSorting="true">
    </asp:GridView>

我想将许多参数(如上述参数)传递给 SelectParameters。方法调用“GetCompaniesSubset”执行,但在返回时出现以下错误:

ObjectDataSource 'odsCompaniesIndex' 找不到具有参数的非泛型方法 'GetCompaniesCount':状态。

我的选择方法是:

    public DataSet GetCompaniesSubset(
        int startRowIndex, int maximumRows, string sortExpression, bool status)
{...}

你如何允许 SelectMethod 使用 StartRowIndexParameterName/MaximumRowsParameterName 和任何额外的参数?

谢谢

4

1 回答 1

2

问题是GetCompaniesCount没有status参数,没有GetCompaniesSubset.

于 2011-02-01T15:58:30.047 回答