我正在用ASP.NET开发一个web应用程序,在一个页面上,我使用了一个带分页的ListView。作为测试,我用600万行填充了从中提取的表。
该表和基于该表的架构绑定视图具有所有必需的索引,并在SQL Server Management Studio中执行查询,SELECT TOP5如预期的那样在不到1秒内返回。
但是在ASP.NET页面上,使用相同的查询,它似乎选择了全部600万行,没有任何限制。分页控件不应该限制查询只返回N行而不是整个数据集吗?如何使用这些ASP.NET控件来处理包含数百万条记录的大型数据集?对于ListView来说,SELECT [columns] FROM [tab
我在本地开发架构中使用Azure MVC和ASP.NET表存储。我的分页代码在处理大型结果集时非常慢:
var PageSize = 25;
var qResult2 = from c in svc.CreateQuery<SampleEntity>(sampleTableName)
where c.PartitionKey == "samplestring"
select c;
TableStorageDataServiceQuery<SampleEn
我正在尝试使用.net MVC4和流畅的nhibernate创建应用程序。
我创建了ProductsFacade,它负责获取数据并将数据插入到数据库中。方法GetProductsByPageAndCategory用于从数据库中获取一页记录。我想编写单元测试来检查分页是否正常工作。
这很难做到,因为分页必须在单个QueryOver查询中完成。我不能写单独的方法,只获取数据,模拟它,并为分页编写单独的方法。所以我需要模拟数据库。我使用moq工具进行模拟。
也许有人可以给出一些如何做到这一点的小贴士?或任何其他替代方案如何解决我的问题?
public class ProductFacade {
大家好,我正在使用自定义分页,并通过此查询获取数据。
DECLARE @pageIndex INT = 0;
DECLARE @pageSize INT = 10;
WITH foo AS (
SELECT ROW_NUMBER() OVER (ORDER BY test ASC) as rownumber, test, col
FROM TestDB.dbo.test
)
SELECT test, col FROM foo
WHERE rownumber BETWEEN (@pageIndex * @pageSize) + 1 AND (@pageIndex * @pageS