对象数据源

时间:2011-05-09 14:38:06

标签: asp.net vb.net objectdatasource

我正在使用objectdatasource创建一个gridview,它在拉动所有记录时工作正常。但是当我想使用selectCountMethod时,网格显示没有值。

我单步执行代码,我的getInvoices(获取请求的数据)返回数据和getInvoicesCount(获取总记录数)。但是当我浏览gridview的rowdatabound时,那里什么都没有,没有数据显示。

这是我设置objectdatasource的代码。为什么它不起作用或需要做些什么才能让selectcount工作?

Me.ODS.TypeName = "invoice"
Me.ODS.EnablePaging = True
Me.ODS.SelectMethod = "getInvoices"
Me.ODS.SelectCountMethod = "GetInvoiceCount"
Me.ODS.StartRowIndexParameterName = "startRowIndex"
Me.ODS.MaximumRowsParameterName = "maximumRows"
Me.ODS.SelectParameters.Add("strbu", strBusUnit)
Me.ODS.SelectParameters.Add("stremailAddress", emailAddress)
Me.ODS.SelectParameters.Add("startDate", search_startdate)
Me.ODS.SelectParameters.Add("enddate", search_enddate)
Me.ODS.SelectParameters.Add("sortExpression", sortExpression & " " & sortDirection)

With gvInvoices
   .PageIndex = intPageIndex
   .PageSize = 25
   .DataBind()
End With

2 个答案:

答案 0 :(得分:1)

检查返回的计数是否为整数。调试它。也许它是空的。 如果不为null则将其解析为整数

答案 1 :(得分:1)

我能够解决这个问题。计数被返回为long而不是整数。我将它改为整数,一切都很好