我在3年前就看到了类似的问题,现在我希望现在有了EF Core,可以解决这个问题。
我从数据库团队那里获得了有关生产运行缓慢的查询的报告,但是由于我们的系统规模如此之大,有时很难将查询追溯到引起查询的代码。有什么方法可以让我们将EF生成的查询与创建它的代码相关联吗?
答案 0 :(得分:2)
EF Core 2.2中有一项名为“查询标签”的新功能:
示例:
var nearestFriends =
(from f in context.Friends.TagWith(@"This is my spatial query!")
orderby f.Location.Distance(myLocation) descending
select f).Take(5).ToList();
这将生成以下SQL输出:
-- This is my spatial query!
SELECT TOP(@__p_1) [f].[Name], [f].[Location]
FROM [Friends] AS [f]
ORDER BY [f].[Location].STDistance(@__myLocation_0) DESC
https://blogs.msdn.microsoft.com/dotnet/2018/10/17/announcing-entity-framework-core-2-2-preview-3/