簡體   English   中英

在未引用的程序集中定義類型“ x”。 VS 2010 C#

[英]The type “x” is defined in an assembly that is not referenced. VS 2010 C#

我有一個我無法解決的問題,想要一些輸入。

我正在C#中的Visual Studio 2010,.net 4.0 Framework中使用多個類庫。 我有一個類庫項目,該項目引用了另一個Visual Studio解決方案的程序集輸出(.dll文件)。 該引用已正確添加到類庫項目中(正確的路徑,版本等)。 編譯器在設計時就知道所有依賴於引用程序集的類型(沒有紅色波浪形)。

但是,當我嘗試構建項目時,出現以下錯誤:

類型'x'是在未引用的程序集中定義的。 您必須添加對程序集“ MyAssembly,版本= 1.0.1.1,區域性=中性,PublicKeyToken =空”的引用。

注意:類型名稱由上面的x代替。

好像沒有添加引用,但是已經添加了。 其他人是否遇到過類似的問題並找到了解決方法?

非常感謝,安德魯

那是一個很奇怪的問題,但是它對於版本是不可知的,即它也適用於VS 2005和VS 2008。

  1. 如果要訪問生成庫文件(.dll文件)的解決方案,請進行一些基本測試,然后確定解決方案的范圍,並對其某些成員有所幫助。
  2. 然后在您自己選擇的項目中,右鍵單擊該項目,然后單擊添加引用。
  3. 瀏覽到bin文件夾下.dll的轉儲位置,然后單擊“確定”添加。
  4. VS通常會顯示一些breif動畫,以顯示其添加的內容。
  5. 救。
  6. 如果需要,可以在庫的名稱空間中使用范圍,當在賦值語句中的“ =”之后按Tab鍵時,VS會自動選擇它。
  7. 在示例類文件中,實例化僅在剛剛添加的.dll文件中找到的某些類型。 VS studio將像正常一樣開始標記關鍵字等,這意味着該參考正在運行,因為intellisense正在選擇新類型。
  8. 實例化.dll中找到的類型或類后,請使用'。'測試實例。 表示法,並查看intellisense從已分配到類文件的元數據中提取了哪些信息。
  9. 您應該找到所有相關的數據成員將填充所探測的類型。

我只是在5分鍾前進行了測試,以確保在VS 2008 Pro Edition中使用.Net 3.5和C#。 沒有問題的伙伴!

嘗試按照它們的步驟進行操作,並按照我在測試它們之前進行的步驟進行故障排除,然后在我對它們進行測試時它們仍然可以正常工作:p。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM