2008-12-03 159 views
2

C#版本4(動態,代碼合同等)是否可以在當前的.NET CLR上運行,還是有計劃的.NET升級?C#4和CLR兼容性

回答

5

C#4將需要.NET 4.0 CLR。

+1

我必須承認,我不是100%由這樣一個籠統的說法說服了......的確,.NET 4.0會,但有你試過VS2010 CTP中的任何非動態C#4.0的東西?不幸的是,我目前沒有使用我的CTP ... – 2008-12-03 08:16:10

+1

當我定位到3.5時,VS RC1中的編譯器編譯「動態」和命名/可選參數。 – 2010-04-02 19:01:07

2

您無需等待4.0使用代碼契約,因爲它運行在.NET 3.5上,學術預覽版的下載鏈接爲here

+0

只適用於學術授權VS2008 :( – johnc 2008-12-03 03:23:58

4

那麼,.NET 4.0將需要CLR 4.0;然而,回答C#4.0的哪些部分可以在.NET 2.0/3.x上工作有點困難。我們可以希望VS2010仍然是多目標的(我沒有CTP「可以這麼說」,所以我不能檢查......)。但有些語言功能似乎不是似乎與運行時(命名參數,一些COM變化,如「ref」)有很大的關係 - 所以我想不出一個很好的理由,爲什麼他們不可用當與.NET 2.0/3.x交談時。雖然我沒有檢查過。

但是,與C#3.0一樣,的某些功能與運行時綁定 - 特別是dynamic

我需要挖掘出CTP和有另一種打法,記錯...