2014-07-23 77 views
1

我在獲取「Missing manifest」錯誤時動態獲取資源時遇到了一些麻煩。我查了一些可能的原因,做了寫在那裏的東西,但到目前爲止沒有任何工作。嘗試通過資源管理器檢索資源時丟失清單錯誤

目前我有這樣的情況: 我試圖訪問的RESX文件是:「資源/ Messages.resx」(因此在非標準文件夾

我正在使用的代碼是這樣的:

ResourceManager resourceManager = new ResourceManager("Resources.Messages", this.GetType().Assembly); 
resourceManager.GetString("ResourceText" + MessageType + "Subject") 

與爲messageType是一個字符串,在第二行中我得到錯誤信息

資源文件的狀態是這樣的:

  • 構建Aciton:嵌入的資源
  • 自定義工具:PublicResXFileCodeGenerator
  • 訪問修飾符公共

的resfile有2個變種:Messages.res和Messages.de.resx具有相同名稱的每一行和也是相同的一般屬性(「GetString」也明確地嘗試訪問正確的名稱)。

所以我的問題是我在那裏做錯了什麼,我能做些什麼來糾正這個問題?

回答

3

發現問題。對於新的ResourceManager,不僅必須給出資源文件的命名空間,而且還需要默認的命名空間。因此,如果應用程序的默認命名空間:MyApplication.MyServerApp然後代替「Resources.Messages」的一個必須投入:「MyApplication.MyServerApp.Resources.Messages」導致以下運行源代碼:

ResourceManager resourceManager = new ResourceManager("MyApplication.MyServerApp.Resources.Messages", this.GetType().Assembly); 
resourceManager.GetString("ResourceText" + MessageType + "Subject")