当前位置: 首页 > 面试题库 >

使用Entity Framework CTP 5“仅节点”时,如何获取基于LINQ查询的原始SQL?

寿卜鹰
2023-03-14
问题内容

我在“仅代码”模式下使用Entity Framework
CTP5。我正在对从数据库返回的对象运行LINQ查询,因为查询的运行速度非常慢。有什么方法可以获取从查询生成的SQL语句?

Topic currentTopic =
    (from x in Repository.Topics
     let isCurrent = (x.StoppedAt <= x.StartedAt || (x.StartedAt >= currentTopicsStartedAtOrAfter))
     where x.Meeting.Manager.User.Id == user.Id && isCurrent
     orderby x.StartedAt descending
     select x).FirstOrDefault();

“存储库”属性是DbContext的后代。

这有点复杂,因为EF无法在对象上使用辅助方法,因此我直接在查询中指定逻辑。

因此,有什么方法可以转储该LINQ查询生成的SQL(例如,转储到我的log4net存储库中)?


问题答案:

我要么使用SQL Trace来直接获取在服务器上运行的查询,要么使用ANTS Performance
Profiler中的
Windows事件跟踪(SQL分析)功能。



 类似资料:
  • 假设我有一个像这样的endpoint。我想获取mp4文件,并将其原始数据插入到字符串中,以便计算整个文件内容的sha256。如何使用节点获取库执行此操作?我在互联网上找到的所有例子都假设从查询中返回一个json对象,是否总是这样,我应该使用另一个库?下面是一个示例代码: 我也没有在留档中找到任何关于函数和对象的内容。那么在这种情况下,达到文件数据的最简单方法是什么呢?提前感谢

  • 我在循环中的节点JS中发送这样的GET请求 由于响应是异步的,是否可以在响应中获取原始请求URL? 谢谢!

  • 问题内容: 使用Ebean创建的Postgres表,我想用手写语句查询这些表: 每个联接表代表我的模型类之一。查询执行得很好,但是我不知道如何进行: 如何使用Play 2.2执行查询。和伊豆?如何将此查询映射到可迭代对象?我是否需要创建一个包含查询中所有字段的Model类,还是可以使用某种HashMap?如何以安全的方式参数化查询? 问题答案: 要执行此查询,您需要使用RawSql类。您还必须创建

  • 问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 我的mySQL数据库中有如下表: 对于谓词,它将具有如下树视图: 我想创建一个可以选择起始节点并为此获得所有父节点的表单。例如,通过选择我想要获得: 步骤2: 有什么方法可以使用以下简单文本来打印此节点: 问题答案: 您的数据可以在RDF中表

  • 问题内容: 我有一个SQLAlchemy查询对象,想获取已编译的SQL语句的文本,并绑定了所有参数(例如,否或其他变量正等待语句编译器或MySQLdb方言引擎绑定)。 调用查询将显示如下内容: 我试着在query._params中查找,但这是一个空字典。我使用装饰器的这个示例编写了自己的编译器,但是即使那里的语句仍然有我想要的数据。 我无法弄清楚何时混入参数来创建查询。当检查查询对象时,它们始终是

  • 在用户模型中,我定义了关系: 它返回如何获得包括参数的完整查询? 我还定义了与post模型的关系: 如何使用参数查看完整的关系查询?