簡體   English   中英

命名空間錯誤中不存在類型資源

[英]type resources does not exist in namespace error

還有一個問題。 我幾乎完成了我的項目,但覺得我必須更改項目的命名空間。 但是我沒有使用 refactor --> rename ,而是選擇了我的命名空間,編輯 --> 查找和替換並將我的整個解決方案替換為不同的命名空間(因此在解決方案中的任何地方,例如命名空間或文本“name1”存在的地方,都是現在變成了“name2”)。

但是現在我遇到了大約 16 個錯誤,所有錯誤都說同樣的話:“命名空間 name1 中不存在類型或命名空間“資源”。

     this.centerPanel.BackgroundImage = global::login_DragDrop.Properties.Resources.oeftest;

那么例如在這行代碼中(主要在designer.cs中)資源是紅色的?

有關如何解決此問題的任何提示?

您需要在資源文件上運行代碼生成以獲取正確的命名空間。

跟着這些步驟:

  • 打開項目屬性(右鍵單擊>屬性)
    • 單擊應用程序部分
    • 輸入您首選的默認命名空間
    • 關閉並保存您的屬性
  • 在解決方案資源管理器中導航到您的Resouces.resx文件(在“屬性”下)
    • 右鍵單擊Resources.resx文件
    • 選擇“運行自定義工具”(或alt + L

這將再次運行資源文件的代碼生成。 生成的代碼使您可以對資源字符串中的值進行強類型訪問。

運行自定義工具對我不起作用。 但我發現如果我添加了一個資源,問題就會自行解決。

跟着這些步驟:

  • 打開項目屬性(右鍵單擊>屬性)
  • 單擊“資源”部分
  • 在Add Resource下拉列表中,選擇Add Existing File
  • 選擇任何資源文件。 (我選擇了一個現有的圖像文件)
    • 此時我的錯誤消失了。
  • 選擇剛剛添加的資源
  • 單擊“刪除資源”(清除)
  • 關閉並保存您的屬性

我知道遲到(非常)的反應,但你去了。

由於在我的案例中沒有一個答案有效,我決定發表自己的答案。

這是我做的:

  • 在完全相同的命名空間(Y)中創建具有相同名稱(X)的類。
  • 命名空間'Y'已包含'X'的定義。 ”出現錯誤。
  • 刪除類X.

刪除該類后,名稱為X的資源在名稱空間中仍然可見。

在我的情況下, Resource.Designer.cs文件以某種方式被排除在項目之外...單擊顯示隱藏文件(顯示所有文件),將其包含在項目中並右鍵單擊並修復。 唷..

您很可能已嘗試添加與現有資源同名的另一個資源文件。 要解決此問題,只需刪除Resources.resx文件中的相應行,例如,您將看到兩行具有相同的“數據名稱”:

  <data name="button" type="System.Resources.ResXFileRef, System.Windows.Forms">
    <value>..\Resources\button.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
  </data>

我還使用“查找和替換”重命名了我的項目命名空間並遇到了同樣的問題。 @rene 建議的應用程序修復是一種修復(謝謝),但我發現“settings.settings”具有舊的命名空間名稱。 在 VS2019 中,我沒有看到任何找到錯誤名稱的方法,因此我使用“查找”來查找問題。

暫無
暫無

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

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