我的C#/ asp.net项目中有一个checkboxlist,我用一个dataTable填充它,从查询中获取数据到我的数据库。查询返回大量数据,我想在过滤数据之前限制它最初显示的元素数量。 (比方说,前1000名)。我该怎么做呢?
答案 0 :(得分:2)
您可以在两个地方限制数据的数量。
在数据库中(假设您使用SQL Server),您可以修改查询以返回前1000行。
SELECT TOP 1000 * FROM SomeTable
或者您可以使用Linq到达后过滤数据。
var newData = dataTable.AsEnumerable().Take(1000);
我更喜欢第一种方法,所以你不要用无用的数据。但是,如果您需要其他地方的数据,第二个肯定也可以。
答案 1 :(得分:0)
您可以使用Take<>
通用IEnumerable方法:
var data = someQuery.Exec();
var limitedData = data.Take(1000).ToArray();