如果我有Visual Studio 2008,我的目標是一個.NET 2.0應用程序,我還可以使用Lambda表達式嗎?我對Lambda表達式的理解是,它是編譯器內置的功能,而不是框架,所以我的結論是我可以在.NET 2.0應用程序中使用Lambda。有人可以告訴我,如果是這樣嗎?VB.NET Lambda表達式
5
A
回答
12
是的,這是完全支持。只要您不建立表達式樹或以其他方式引用System.Core,System.Xml.Linq等......在向下目標2.0的應用程序中使用Lambda表達式是完全合法的。 VS2008(VB9)中引入的任何其他編譯器功能都是如此。
EDIT
若干答案錯誤狀態Lambda表達式是3.5或3.0的特徵的特徵。 Lambda表達式是一種編譯器功能,不是Framework框架。它們不需要框架支持就可以運行,在目標應用爲2.0的應用程序中使用它們是完全合法的。
如果您使用lambda作爲表達式樹,唯一會遇到麻煩的地方是。表達式樹既是編譯器和框架功能,也需要3.5才能正常工作。但是,我們必須努力實現這一目標,因爲我們積極地嘗試阻止其發生。
-3
它不起作用。使用Linq需要System.Linq成爲.NET 2.0所沒有的框架程序集的一部分。
2
是的你是對的。您可以使用lambda表達式代替匿名方法。編譯器會將其餘的排序。試試這個:
int sum = 0;
Array.ForEach(new[] {1, 2, 3, 4}, x => sum += x);
你不能做的是使用.net 3.5(即Linq)的任何新功能。這樣做需要添加對.NET 2.0中不存在的System.Linq,System.Core等的引用。
相關問題
- 1. Lambda表達式:CS到VB.Net
- 2. VB.NET TextBoxFor Lambda表達式
- 3. VB.NET lambda表達式示例
- 4. vb.net lambda表達式問題
- 5. C#Lambda表達式到VB.Net
- 6. vb.net vs C#lambda表達式
- 7. 計算方差與VB.NET lambda表達式
- 8. 如何編寫VB.Net Lambda表達式
- 9. 異步lambda表達式中VB.NET
- 10. VB.NET Lambda表達式代替迭代器
- 11. vb.net中的lambda表達式錯誤
- 12. 在vb.net中表達的這個lambda表達式
- 13. Lambda表達式
- 14. Lambda表達式
- 15. Lambda表達式
- 16. Lambda表達式
- 17. Lambda表達式
- 18. Lambda表達式
- 19. Lambda表達式
- 20. Lambda表達式
- 21. Lambda表達式
- 22. lambda表達式
- 23. Lambda表達式()
- 24. lambda表達式
- 25. lambda表達式
- 26. Lambda表達式
- 27. Lambda表達式與表達
- 28. winform combobox lambda表達式
- 29. LINQ Lambda表達式
- 30. Linq Lambda表達式
是的,丹丹的權利。另外,不,你不能通過將它們放在你的箱子中來引用3.5程序集。我問過......問題是系統命名空間也有很多變化。 – andy 2009-07-21 23:05:22