Источник данных объекта

#asp.net #vb.net #objectdatasource

#asp.net #vb.net #objectdatasource

Вопрос:

Я создаю gridview с использованием objectdatasource, и он отлично работает при извлечении всех записей. Но когда я хочу использовать selectCountMethod , сетка не показывает значений.

Я выполняю пошаговое выполнение кода, и мой getInvoices (получает запрошенные данные) возвращает данные и getInvoicesCount (получает общее количество записей). Но затем, когда я просматриваю rowdatabound gridview, там ничего нет, и данные не отображаются.

Вот мой код для установки 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 amp; " " amp; sortDirection)

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

Комментарии:

1. Я смог разобраться с этим. Количество возвращалось как long вместо целого числа. Я изменил его на integer, и все работает отлично.

2. правильным способом было бы опубликовать это как ответ и принять его, когда это возможно. Таким образом, вопрос не остался бы открытым.

3. @Tim Schmelter спасибо. ответил. Я не был уверен, правильно ли это делать.

Ответ №1:

Проверьте, является ли возвращаемое число целым числом. отладьте это. возможно, это значение равно null. и если не null, проанализируйте его до целого числа

Ответ №2:

Я смог разобраться с этим. Количество возвращалось как long вместо целого числа. Я изменил его на целое число, и все работает отлично

Комментарии:

1. Тем не менее, ваш ответ настолько похож на ответ @Ramie, что я бы не стал создавать ответ самостоятельно, а принял ответ Рами с комментарием, что на самом деле было неправильным, чтобы он мог добавить это к своему ответу, возможно.

2. Я только сейчас увидел, что он опубликовал свой ответ после того, как вы опубликовали, что было не так. Это не очень хороший стиль, так что забудьте последний комментарий.