gpt4 book ai didi

c# - LINQ 中的匿名类型查询或普通查询

转载 作者:太空狗 更新时间:2023-10-30 00:46:25 29 4
gpt4 key购买 nike

var emps = from x in DB  
where x.ID = 100
select x;

var emp1 = from x1 in DB
where x1.ID = 100
select new { x };

这两个查询有什么区别。

如果我们使用匿名类型,性能会提高还是会有其他差异?

最佳答案

这两个查询有很大的不同。第一个返回您的实体的集合,第二个返回匿名类型的集合,其中有一个名为“x”的成员包含您的实体。

访问emps:

emps.First().SomeMember

访问 emp1:

emp1.First().x.SomeMember

第一种方法是正确和自然的,第二种方法很奇怪,在我看来并不是你真正想要实现的。

另外,在这里使用匿名类型会提高性能也是不正确的。表示实体的对象无论如何都必须构建,但这次您以不太友好的形式获得它。

关于c# - LINQ 中的匿名类型查询或普通查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3359800/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com