我有一個類型讓我們稱之爲「MyType」。我有一個List(Of MyType)。這是我在做什麼:在lambda表達式中的VB.Net和類型推論?
MyList.Sum(Function(x) x.MyFieldToTotal)
「MyFieldToTotal」是一個小數。對於我的生活,我無法弄清楚爲什麼x上面是一個對象而不是「MyType」類型。在這種情況下不應該使用類型推理嗎?即使在智能感知我得到 「選擇爲System.Func(中的MyType)爲十進制」
爲了測試C#& vb.net之間的差異,我做了以下內容:
dim MyVar as new list(Of System.IO.FileStream)
MyVar.Sum(Function(x) x.
List<System.IO.FileStream> MyVar = new List<System.IO.FileStream>();
MyVar.Sum(x=>x.
在VB.Net x爲類型爲Object,而在C#x中則是FileStream類型。那麼爲什麼在這種情況下使用c#而不是vb.net進行類型提示?
另外,還要注意「選項推斷」爲ON
您正在使用哪個版本的Visual Studio/VB.Net? – jeroenh 2010-02-22 21:22:52
我可以告訴你,我現在試用VS 2010,它的工作原理。 VS 2008沒有去。看起來像一個VS 2008的錯誤。 – coding4fun 2010-02-23 01:50:50