c# - 改进从 Entity Framework 生成的查询

标签 c# linq entity-framework

我有一个这样的查询 linq:

var query = from c in Context.Customers select c;
var result = query.ToList();

Linq 查询生成此 tsql 代码:

exec sp_executesql N'SELECT 
[Project1].[Id] AS [Id], 
[Project1].[Name] AS [Name], 
[Project1].[Email] AS [Email]
FROM ( SELECT 
    [Extent1].[Id] AS [Id],
    [Extent1].[Name] AS [Name], 
    [Extent1].[Email] AS [Email]
    FROM [dbo].[Customers] AS [Extent1] ) AS [Project1]

有没有办法不生成子查询?

最佳答案

您是否有任何证据表明该查询导致了性能问题?我想查询优化器会很容易地识别出这一点。

如果您在分析后确定查询是一个性能问题(有疑问) - 并且 那么 - 您可以简单地将查询转换为存储过程,并改为调用它。

关于c# - 改进从 Entity Framework 生成的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7418675/

相关文章:

c# linq to xml 列表

c# - WP7 - 解析 XML 数据

entity-framework - 首先使用EF代码对实体进行本地化的最佳实践

c# - 继承IdentityUser时如何创建新用户

c# - Mongodb 聚合组然后使用 C# 进行条件求和

c# - 可用于 C# .NET 的 Cobertura 等效项?

c# - 如何在Azure函数中绑定(bind)到MessageSender?

c# - 我怎样才能进行这个 LINQ 查询?

c# - Entity Framework .Any() 过滤器出错

c# - 如何以编程方式更改 Windows 7 Aero/Window 边框颜色?