2011-07-25 68 views

回答

1

你想List.LongCount

Dim CarList As New List(Of Car) 
Dim Model As String = "Toyota" 
Dim ToyotaCount As Long = CarList.LongCount(Function(car) car.Name = Model) 
+0

您好,我得到這個錯誤'「LongCount」不是'System.Collections.Generic.List(Of SubmitForce.mdlGeneral.Car)'的成員' – Smith

+0

對不起,我錯過了關於.Net 2.0的一點。我認爲,除非你編寫自己的繼承'List'的類,否則謂詞不適用於你想做什麼。 –

0

的語法是公然錯的,但這樣的事情:

Dim toyotas as Integer; 
toyotas = 0; 
foreach(car c in listcars){ 
    if(c.Name == "toyota")//make sure to do string comparison here. 
     toyotas++; 
} 
+0

感謝,但是這不是我期待的/我知道如何使用每個循環,但我在我的問題用謂詞表示 – Smith

1

你在這裏。

var count = carList.Count(x => x.Name == "Toyota"); 
+2

的作品,但他的例子是在vb –

+0

您正在使用LINQ,但我使用vb2005,這可以轉換爲匿名函數 – Smith

+0

'dim count as integer = carList.Count(Function(x)x.Name =「Toyota」 )' –

3
Dim toyotas As Integer = carList.Count(Function(c) c.Name = "Toyota") 
+2

感謝您的回覆,但我得到一個錯誤'公共ReadOnly屬性計數()作爲整數'沒有參數,其返回類型不能被索引' – Smith