使用前端集合时,“数据源不支持服务器端数据分页”

时间:2009-08-14 02:44:16

标签: .net asp.net sorting gridview exception-handling

我目前有一个转发器,其数据源是一个List,其中ModelObject是前端的自定义类,用于帮助呈现更复杂的LINQ to SQL对象。例如,它为链接,状态名称等呈现URL。状态名称不在数据库中,因为我们知道有一天我们必须本地化这个应用程序。

现在我需要对此列表进行分页和排序,因此我尝试切换到gridview以利用开箱即用的功能。我收到错误“数据源不支持服务器端数据分页”。我可以使用哪种数据源仍然允许我的前端自定义输出?这似乎应该是一项常见任务,因为本地化的应用程序需要来自resx文件的排序值。

感谢您的帮助。

2 个答案:

答案 0 :(得分:8)

您无法使用IQueryable对象将数据绑定到GridView,仍然使用分页和排序。您必须使用ToList()方法将List返回给GridView。

有关更多信息,请参阅此DevToolShed文章:
http://www.devtoolshed.com/content/gridview-objectdatasource-linq-paging-and-sorting

答案 1 :(得分:3)

对于那些收到此错误但正在执行的人:

IEnumerable<T> or 
IEnumerable or 
IList<T> or 
IDictionary<T1, T2>.

您需要实现ICollection(非泛型的)才能通过“数据源不支持服务器端数据分页”错误。