C# 在实体框架中,哪一个比Any()或FirstOrDefault()更快?

C# 在实体框架中,哪一个比Any()或FirstOrDefault()更快?,c#,.net,entity-framework-5,C#,.net,Entity Framework 5,我是实体框架和SQL的新手。我想知道哪一个更快:Any()或FirstOrDefault()。请参阅下面我想如何使用它们 选项1 if(Comments.Select(c=>c.ObjectId).FirstOrDefault()>0) {...} 生成的SQL 选项2 if(Comments.Select(c=>c.ObjectId).Any()) {...} 生成的SQL 你忘了为每一匹马张贴基准吗?如果你有两匹马,你想知道这两匹马中哪一匹跑得更快,那么就去比赛你的马。

我是实体框架和SQL的新手。我想知道哪一个更快:
Any()
FirstOrDefault()
。请参阅下面我想如何使用它们

选项1

if(Comments.Select(c=>c.ObjectId).FirstOrDefault()>0) {...}
生成的SQL

选项2

if(Comments.Select(c=>c.ObjectId).Any()) {...}
生成的SQL


你忘了为每一匹马张贴基准吗?如果你有两匹马,你想知道这两匹马中哪一匹跑得更快,那么就去比赛你的马。猜一猜我刚刚要读的内容可能是重复的
if(Comments.Select(c=>c.ObjectId).Any()) {...}
SELECT 
CASE WHEN ( EXISTS (SELECT 
    1 AS [C1]
    FROM [dbo].[Comments] AS [Extent1]
)) THEN cast(1 as bit) WHEN ( NOT EXISTS (SELECT 
    1 AS [C1]
    FROM [dbo].[Comments] AS [Extent2]
)) THEN cast(0 as bit) END AS [C1]
FROM  ( SELECT 1 AS X ) AS [SingleRowTable1]