Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 如何使用。在通用列表中的何处_Vb.net_Linq - Fatal编程技术网

Vb.net 如何使用。在通用列表中的何处

Vb.net 如何使用。在通用列表中的何处,vb.net,linq,Vb.net,Linq,我有一个列表(MyType),我想使用LINQ获得列表的子集 在MyType上有一个名为AccountNumber的字段。我能用LINQ这样说吗 Dim t As List(Of MyType) t = GetMyTypes() t = t.Where(AccountNumber = "123") 谢谢你就快到了。的参数Where需要是一个函数,因此您的代码应该如下所示: Dim t As List(Of MyType) t = GetMyTypes() Dim result = t.Wher

我有一个列表(MyType),我想使用LINQ获得列表的子集

在MyType上有一个名为AccountNumber的字段。我能用LINQ这样说吗

Dim t As List(Of MyType)
t = GetMyTypes()
t = t.Where(AccountNumber = "123")

谢谢

你就快到了。
的参数Where
需要是一个函数,因此您的代码应该如下所示:

Dim t As List(Of MyType)
t = GetMyTypes()
Dim result = t.Where(Function(x) x.AccountNumber = "123")
或者,您可以使用详细的LINQ语法:

Dim result = From t In GetMyTypes() Where t.AccountNumber = "123"

返回的数据类型不是
列表(MyType)
,而是
IEnumerable(MyType)
,因此不能直接将其分配给声明为
列表(MyType)
的变量。如果要创建列表,可以使用
result.ToList()
对其进行“转换”。这也会导致。

不确定是否可以添加到此。。。在.Where()中添加.First不是更好吗?@Feign:这取决于您想要实现什么:如果您想要帐户号为
123
的第一个条目,请使用
First
(不过,在这种情况下,添加
Order By
子句可能会有用)。如果您想要账号为
123
的所有条目的列表,请使用
ToList