我有一个这样的查询 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/