考慮以下情況:無效.resx文件的命名空間
- 在我的Windows窗體appliation我有一個表格。
- 該表單有一個.resx文件。
- 表單使用來自其他程序集(「Other.dll」)的類(「OtherClass」)。
- 「Other.dll」與主應用程序 (只是同一解決方案中的一個單獨項目)構建在同一VisualStudio 2010解決方案中。
- 在主項目(Windows窗體應用程序)中,我正確地添加了對「Other.dll」項目的引用 。
一切正常(如預期)。
現在我需要從「Old.Namespace」到「New.Namespace」更改包含在「Other.dll」類型的命名空間:
- 在VS2010,造就了我的屬性窗口在「Other.dll」 項目
- 我從「Old.Namespace」「默認命名空間」文本框中的名稱空間更改爲 「New.Namespace」
- 我改變命名空間相關的.cs文件相應
- 我重建修改後的「Other.dll」項目噸。沒有錯誤。修改後的「Other.dll」生成OK。
現在問題來了:
當我在此之後重建整體解決方案,編譯器停止,並報告形式的.resx文件是無效的:
「無效Resx文件無法加載類型Old.Namespace.OtherType其他版本1.0.0.0 Culture = neutral,PublicKeyToken = null在.RESX文件中使用。確保必要的引用已添加到項目中。 1521行,位置5「
顯然,.resx文件仍然引用從某處老命名空間中的類型。這個「某處」似乎來自.resx文件的二進制部分!
問題: 我該如何讓.resx明白它現在必須引用新類型(使用更改後的命名空間)?
請幫幫忙,我真的不知道該怎麼繼續在這裏...
您是否嘗試過在您的resx上「運行自定義工具選項」(右鍵單擊)? – lnu
您是否嘗試刪除對Other.dll的引用並重新添加?也許「copy local = True」可能會導致問題.. –
否。但是當我在Solution Explorer中右鍵單擊.resx文件時,在彈出菜單中看不到任何「運行自定義工具」?你能更具體一點嗎? –