2011-03-16 86 views
18

我在我的解決方案中刪除了一個項目,然後重新添加它。 由於閱讀它..我現在得到一個ambiguous reference錯誤,現在我無法刪除。 觀看類的實現(這是越來越錯誤)我看到它引用了兩次:歧義參考

> ClassName (myclass.Class) myclass.Class 
> ClassName (myclass.Class) myclass.Class, Version=1.0.0.0 

命名空間僅觀看一次,但是這個問題只在1個局部視圖存在。

編輯:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyClass.Class.MyViewModel>" %> 

MyViewModel被給予明確的錯誤,如果我看到所有可用類它顯示了像重複:

MyClass.Class.MyViewModel 
MyClass.Class.MyViewModel 
MyClass.Class.MyOtherViewModel 
MyClass.Class.MyOtherViewModel 

,但是當我在同一個項目中打開另一個局部視圖, 沒關係。這只是1部分,似乎保留了重複的參考。

任何想法如何解決這個問題?

+2

模棱兩可的標題 – 2015-11-17 04:22:32

回答

43

您是否嘗試過右鍵單擊該解決方案並執行Clean Solution

+5

我做了幾次清理..但它採取了手動清理排序。感謝所有 – nologo 2011-03-16 14:13:33

+0

我也必須做一個手冊,以解決這個問題,但謝謝你。 – EllisChadwick 2013-10-30 10:33:20

+1

偉大的手動清潔說明從這個答案:http://stackoverflow.com/a/4744901/85662。 – WhatIsHeDoing 2014-08-12 16:16:41

-2

由於您有兩個具有相同名稱和相同名稱空間的類,因此會出現此錯誤。你應該改變其中一個類的命名空間。

+0

nope ..該類只命名一次。請參閱編輯 – nologo 2011-03-16 13:24:58

+0

嘗試刪除引用並確保您按項目引用。 – 2011-03-16 13:28:21

+0

完成。它只保留了一個奇怪的參考。重新啓動我的機器/清理解決方案/清除臨時asp.net文件夾 – nologo 2011-03-16 13:29:59

4

聽起來好像您的項目對同一個程序集有兩個不同的引用。

擺脫其中之一。

1

我收到這是一個錯誤的錯誤消息,我的項目仍然建成並運行良好數月。這是因爲有人把一個類放在一個名字空間的名字空間中,這個名字空間的名字空間與這個名字空間的所有其他實例不同,所以它們實際上是兩個不同的名字空間。我們的代碼在技術上是正確的,但ASPX <%@ Register %>指令抱怨說它不明確,因爲有兩個不同的符號具有「相同」的名稱; MyNamespaceMynamespace

檢查您的大小寫。

1

你有沒有試過把它(Visual Studio)關閉和再次?它爲我工作...

0

可能您的項目有一個鏈接到解決方案中的程序集,而且您的項目類有一個using語句引用程序集中的名稱空間。

如果項目屬於一個解決方案,請刪除項目之間的裝配鏈接。

0

如果您有兩個不同版本的引用,也會發生這種情況。如果您在問題項目中引用程序集並引用另一個具有相同引用但版本不同的項目,那麼使用哪個引用就不明確。