我正在构建基于ASP.NET MVC 3.0的应用程序,并在MVC WebGrid中显示数据。ASP.NET MVC3-通过分页概念改进性能,我需要一个例子吗?
我正在使用LINQ从实体获取记录到EntityViewModel。在这样做时,我必须将记录从实体转换为EntityViewModel。
我有30K记录显示在网格中,每个记录都有3个标记,它必须去3个其他表并且比较记录的存在和paint与true或false并显示相同的格。
我一次显示10条记录,但是当我获取所有记录并存储在我的应用程序中时,它非常慢。
分页已到位(我的意思是说 - 只有10条记录正在Web网格中显示),但所有记录正在加载到应用程序,这需要15-20秒。我已经检查了处理器花费的时间。它发生在绘画的地方(每个记录都与其他3张表进行比较)。
我已经将LINQ查询转换为SQL,我可以看到我的SQL查询在2秒内得到执行。通过这个,我可以强烈地说,我不想花时间在SQL索引上,因为SQL查询的速度足够好。
我有两个选择来实现 1)缓存为MVC 2)寻呼(我应该只得到前10条记录)。
我想用寻呼技术来提高性能。
现在我的问题是如何将数字10(没有记录的服务方法)传递给它,以便它只带来十条记录。还有,点击下一页时如何获得下10条记录。
我会发布代码,但我不能这样做,因为它有一些敏感数据。
任何示例如何解决这种情况,非常感谢。
你需要发布某种代码才能得到真正的答案。如果您担心泄露敏感信息,请更改变量和列名称。 – Dave