![](/img/trans.png)
[英]The type or namespace name 'Exchange' does not exist in the namespace
[英]Type or namespace name does not exist in the namespace - yet the namespaces do exist
我已經工作了很長時間沒有任何問題的項目突然開始拋出錯誤,例如
The type or namespace name 'xxx' does not exist in the namespace 'yyy' (are you missing an assembly reference)?
在這種情況下,命名空間都是核心 .Net 庫,例如System.Data
、 Linq
和IO
,我一直在使用,沒有任何問題。
我已經通過所有的問題,工作這個問題,如確保工作區中的所有項目都使用的目標框架設置相同版本的.NET的。
我刪除了所有有問題的庫並重新添加了它們,但問題仍然存在。 我懷疑他們的庫本身已損壞,因為我在解決方案中的其他項目中引用了它們。
在使用 TFS 回滾我的工作后,我設法弄清楚了我所做的導致此錯誤的操作:我在我的項目中添加了一個名為“System”的文件夾,並在其中放置了一個類文件。
這是一個很容易重現的問題:創建一個項目,向其中添加一個名為 system 的文件夾(此時它仍然會編譯),然后在其中創建一個 .cs 文件,屆時所有有趣的錯誤都會發生。
問題源於“System”文件夾的名稱,這導致在其中創建的任何文件都位於命名空間“.System”下。
我可以理解為什么現在擁有一個名為“System”的文件夾/命名空間會導致問題,但我認為如果 Visual Studio 在創建此類名稱的文件夾/命名空間時發出警告以首先阻止此問題的發生,這會有所幫助。 我已經用 MS 記錄了一個錯誤,至少記錄這個錯誤可能會幫助任何其他和我犯過同樣錯誤的人!
我的系統意外關閉后,我遇到了同樣的問題,即使 VS 嘗試恢復,問題還是出現了。
我的解決方案資源管理器中有兩個項目。 為了解決這個問題,我右鍵單擊了與錯誤消息關聯的項目並選擇了“構建”。
之后,問題就解決了。
只是補充一點,在我從另一個“項目”中添加了對“項目”的引用后,問題已永久解決。
我將我從myproject.shared.constants引用的文件的命名空間重命名為myproject.SOMETHING.shared.constants
之后它建議“使用myproject.SOMETHING.shared.constants”作為建議。 我將它重命名回myproject.shared.constants然后它起作用了。
嘗試清理然后重建 dll 文件。我遇到了同樣的問題,嘗試了來自互聯網的不同建議,但沒有一個工作。但它會。 如果您不知道如何執行以下步驟:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.