几个小时以来,我一直在享受实体框架6上Entity Framework Plus的功能,尤其是IncludeFilter。
使用常规的Entity Framework 6,我可以简单地在IQueryable上调用ToString()来轻松获取将在DB Server上实际处理的SELECT查询。
但是使用EF +,当我应用IncludeFilter时,我只会得到:
Z.EntityFramework.Plus.QueryIncludeFilterParentQueryable`1[MyRecord]
因为ToString()
在EF +中似乎没有以相同的方式过载。
有没有一种方法可以为“ IncludeFilter”查询以及传统查询生成SQL?
我知道我可以使用足够的分析工具在SQL Server本身上获得它,但我希望能够在EF的代码端实现它。
答案 0 :(得分:1)
有没有一种方法可以为“ IncludeFilter”查询以及传统查询生成SQL?
不,目前没有办法。
稍后可能会出现,但是目前,该库不提供此功能。
(我是所有者)
编辑:回答评论
我最担心的是要知道生成的查询是否经过优化
我不会称其为优化。它们是由Entity Framework生成的,对我们而言并没有任何真正的修改。
Include
在EF6中所做的一样Include
类似地创建多个小型查询答案 1 :(得分:0)
也许有点晚,但是您可以使用SQL Server Profiler跟踪数据库事件(例如查询)。使用SQL Tuning配置文件,它将跟踪您的查询,您可以在SQL中查看它们。
答案 2 :(得分:0)
您可以使用当前上下文的日志来跟踪在此实例下执行的所有请求
//subclass
public class D extends BaseClass
{
public D()
{
}
public void print()
{
System.out.println(“hello D”);
}
}