什么(如果有的话)是这个VB Linq查询的以下两个版本的结果之间的差异?
'假设我们有一个XElement,其中包含在其他地方定义的员工详细信息
Dim ee = From e In someXML._ Select New With {.Surname = e. , .Forename = e. }
和
Dim ee = From e In someXML._ Select Surname = .Surname = e. , .Forename = e.
即什么是新的...有语法?
我怀疑这有一个简单的答案,但我找不到 - 任何指向合适教程或Microsoft文档的链接都将受到赞赏.
区别在于第1个显式创建了匿名类型.第二个是查询表达式,可以使用现有类型而不是创建匿名类型.来自Cameron MacFarland链接的文档:
查询表达式并不总是需要创建匿名类型.如果可能,他们使用现有类型来保存列数据.当查询从数据源返回整个记录或每个记录只返回一个字段时,会发生这种情况.