我正在将Entity Framework 6 Code First与Oracle数据库一起使用(使用Devart DotConnect for Oracle)
对于具有SingleOrDefault的特定查询,查询需要1秒才能完成:
-- Executing at 08.10.2019 10:04:04 +02:00
-- Completed in 1211 ms with result: d
但是,在关闭连接的3,5分钟内什么也没有发生:
Closed connection at 08.10.2019 10:07:41 +02:00
在此期间,数据库服务器的CPU达到100%。
如果我直接在数据库上执行相同的查询,那将非常快。
如果我稍微修改我的LINQ查询,它也非常快。
您有什么想法我可以尝试查找问题的根源以及为什么直接执行查询还是从实体框架执行查询之间有区别?
启用dbMonitor并指定EF提供程序生成的SQL。
检查dbMonitor中的Parameters窗口,并确保WHERE条件中使用的参数的数据类型与相应列的数据类型相同。
告诉我们您的Oracle Server的版本和版本。