2010-04-19 98 views
2

我剛剛從VS2008升級到VS2010。在這個過程中,我允許它將我的DLL升級到4.0。我決定這不是一個好主意,現在我已經回滾了。升級到4.0 Framework,然後降級,現在找不到Linq命名空間?

這一切工作正常在VS2010,但是當它擊中我的CI服務器(CruiseControl.Net),我得到一個錯誤:

The type or namespace name 'Linq' does not exist in the namespace 'System' (are you missing an assembly reference?

3.5是在服務器上,並使用其他項目3.5建立良好,所以我不認爲這是一個框架問題。

任何人有任何提示?

回答

5

我確實有System.Core程序的參考,但事實證明我的項目之一,當我降級,它沒有添加此號位背到我的項目文件:

<Reference Include="System.Core"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
    <Private>False</Private> 
</Reference> 

的關鍵部分有RequiredTargetFramework。我被告知,因爲不僅Linq沒有被發現,而且Func <>和擴展方法屬性。

這是所有3.5缺少的東西。

+0

我剛剛完成與您一樣...感謝您爲我節省一些挫折! – NeilD 2010-10-21 16:33:09

6

請確保您有對System.Core.dll的引用。

+0

我試過:)具體來說,當你這樣做的時候,它會告訴你,你不能添加對System.Core的引用,因爲它是默認包含的。 – CubanX 2010-04-19 17:45:23

+1

它在那裏,在你的名單中?它是否設置爲正確的版本?如果沒有,你需要手工編輯你的項目來糾正它...... – 2010-04-19 17:47:50

+0

爲你在球場裏得到讚賞裏德:)在找到解決方案後,我看到了你的評論。 – CubanX 2010-04-19 19:09:52

相關問題