2009-06-11 98 views
7

我在VS2008中有一個組件項目構建,並且面向.NET Framework 3.5。我最近下載了VS2010 Beta 1,以確保該項目在切換到新IDE時能夠正確轉換。該項目包含對根據框架2.0版構建的幾個第三方dll的引用。我改變了我的項目以構建4.0版本的框架,但是當我嘗試構建項目時,我收到大量錯誤,看起來編譯器無法識別類似於下面的第三方庫的類類型。VS2008到VS2010項目轉換

「的類型或命名空間名稱‘數據’不存在命名空間存在‘Microsoft.Practices.EnterpriseLibrary’(是否缺少程序集引用?)」

我試圖找出爲什麼我不能不會編譯。從我讀到的.NET 4.0使用不同版本的CLR。如何或爲什麼會影響我訪問這些類型的能力?上午我將不得不

一)獲得源代碼,並在VS2010重新編譯/ .NET 4.0,然後引用該組件或

二)等待項目作者做「一」上面並釋放其組件針對4.0 CLR?或

c)別的,因爲也許我的VS2010安裝是borked?

我可以將項目屬性更改爲目標3.5,一切正常,因爲我期望在2010 IDE下。

+1

我的經驗:VS2010在轉換項目方面存在嚴重問題。 – 2009-06-11 19:23:23

回答

1

我想將這個問題標記爲答案,並基於評論和我自己的經驗,我認爲Mehrdad在問題附帶的評論中是正確的,並且這是VS2010項目轉換問題。

2

我懷疑這是因爲.NET 4.0使用CLR 4.0而不是2.0。 EL 4.1將會針對CLR 2.0而構建,所以我不確定我是否期望在沒有幫助的情況下找到它。

+0

我可以發誓當我開始使用.NET 2.0(VS 2005)時,我能夠使用1.1 dll。我沒有安裝它,所以我不能肯定地說。我認爲這種情況與此相似。 – sdanna 2009-07-06 15:11:22

+0

你從來沒有能夠混合使用.NET 1.1和2.0。 – 2009-07-06 15:16:48

2

似乎像CLR版本問題給我。

目前,我會推薦b)和/或只編譯到v2.0/v3.5。

想要在v4.0中使用的任何特定功能?