0
私はASP.NET Core 1.1を使用しています。AzureのSQL実行時間が非常に長い
次は、最も時間がかかり、すべてのこのトラブルの原因となるクエリです:
C#
List<Message> messages =await _context.Messages.Where(m => m.UserId.Equals(_userManager.GetUserId(User)))
.Select(m => new Message { ID = m.ID, DateTime = m.DateTime, Text = m.Text }).ToListAsync();
SQL
SELECT [m].[ID], [m].[DateTime], [m].[Text] FROM [Messages] AS [m] WHERE [m].[UserId] = @__GetUserId_0
マイウェブサイトが非常に遅くなる応答せず、時にはエラーを表示することがあります。
実行計画には、ほぼ500,000行のインデックススキャンが表示されます。インデックスを叩くのではなく、完全なスキャンをしているようです。しかし、あなたのインデックスを見ることなく、それを伝えるのはちょっと難しいです。 –
クエリが返す行の数はいくつですか?クエリはSSMSでどのくらいの期間(すべての行が表示されるか)ですか? –
@DavidMakogonこれは興味深い点ですが、インデックスをスキップする原因は何ですか? – Techy