c# - 什么更快?选择 [object] 或使用 linq 选择 new {[object].value1, [object].value2}

标签 c# sql linq linq-to-sql

我希望你们中的一些专家知道这个问题的答案。哪个更快? A或B

答:

var item = from d in database
           select d;

B:

var item = from d in database
           select new {d.item1, d.item2};

表面上看,选择部分表对象似乎比选择整个对象更快,但有些事情告诉我事实并非如此。

最佳答案

如果 LINQ 查询将转换为 SQL,那么第二个查询会更快,因为它从数据库返回的结果更少。

第一个查询将返回数据库行中与相关实体对应的所有字段。第二个只会返回与 value1value2 对应的两个字段。

关于c# - 什么更快?选择 [object] 或使用 linq 选择 new {[object].value1, [object].value2},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2428366/

相关文章:

sql - 使用 SELECT TOP 时出现转换失败错误,但选择所有行时没有错误

c# - ML.NET 回归 FastTree 预测始终返回 0

php - mysql 中的时间未正确更新

c# - 如果我指定了基类,为什么我不能用泛型调用参数化构造函数

基于来自另一个表的 SELECT 的 SQL UPDATE

c# - LINQ 查询不返回任何值

c# - 在 LINQ 中使用 OrderBy 首先是西里尔字母,然后是拉丁字母

c# - Entity Framework : select property as Object

c# - Word 互操作代码中的歧义

c# - 多线程还是不多线程?