Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql MVC中的db查询性能不佳_Sql_Sql Server_Asp.net Mvc_Performance - Fatal编程技术网

Sql MVC中的db查询性能不佳

Sql MVC中的db查询性能不佳,sql,sql-server,asp.net-mvc,performance,Sql,Sql Server,Asp.net Mvc,Performance,我已经安装了一个ASP.NET MVC应用程序,并通过azure将其连接到数据库。在本文中,我有一个trafficlog表,其中包含超过1M个条目,当您试图在视图中打开它时,当然会付出代价——所以我实现了分页 这是我用来获取条目的控制器函数: public ActionResult Index(int startIndex){ var trafficlog = db.TrafficLog.OrderByDescending(t => t.time).Skip(sta

我已经安装了一个ASP.NET MVC应用程序,并通过azure将其连接到数据库。在本文中,我有一个trafficlog表,其中包含超过1M个条目,当您试图在视图中打开它时,当然会付出代价——所以我实现了分页

这是我用来获取条目的控制器函数:

    public ActionResult Index(int startIndex){
        var trafficlog = db.TrafficLog.OrderByDescending(t => t.time).Skip(startIndex).Take(100);
        return View(trafficlog.ToList());
    }
不幸的是,这非常慢,并且在返回条目之前超时

为什么这是一个问题?我假设只有100个条目会从数据库中被请求,这将使性能非常快速,但它似乎仍然会得到所有条目


使用SQL server explorer并直接联系数据库,我得到了近乎即时的响应,因此我知道SQL server没有问题。

您似乎在
time
列中缺少索引。检查你是否有索引,如果不添加索引。

请使用探查器捕获正在执行的SQL查询,并在Management Studio中手动执行。您使用的是哪种ORM?将trafficlog添加到手表中,您将看到针对您数据库运行的整个SQL语句。我在本实例中使用实体框架,就像您的时间专栏所需要的那样你检查过了吗?这不会直接影响SQL查询吗?