如果我有表达式:
from p In Product Select p.Name
我知道p是产品元素。
如果我有:
Dim allProducts = Products.Select(Function(p) p.Name)
我的问题是我在这里怎么说p是产品元素?
答案 0 :(得分:2)
因为VB.NET编译器使用Type inference
由于这一点,通过首先分析Function(p) p.Name
的签名来发现匿名方法.Select()
的参数类型和返回值(以发现{{1}的类型}}然后是p
的类型(以发现返回值类型)
来自Basic Instincts: Lambda Expressions
强大的类型推理机制的引入意味着您不必担心找出每个变量的类型。
依旧......这很长。