2011-09-19 47 views
1

我試圖從Resource獲取一些值。但每次它給了我下面的錯誤:ResourceManager無法通過指定鍵獲取值

[MissingManifestResource_NoNeutralAsm] 參數:FreakyBoss.Client.Resources.Language.resources,FreakyBoss.Client 調試資源字符串不可用。關鍵和論據常常提供足夠的信息來診斷問題。見http://go.microsoft.com/fwlink/?linkid=106663&Version=5.0.60401.00&File=mscorlib.dll&Key=MissingManifestResource_NoNeutralAsm

我的代碼是這樣的:

private readonly ResourceManager _resourceManager; 
    public TranslationProvider() { 
     _resourceManager = new ResourceManager("FreakyBoss.Client.Resources.Language", Assembly.GetExecutingAssembly()); 
    } 
    public string GetResourceValue(string key) { 
     return _resourceManager.GetString(key); 
    } 

我的解決方案結構:

enter image description here

我不知道有什麼問題就。我有兩個資源文件,你可以在上面的圖片中看到。 我認爲在ResourceManager中構造函數的參數BaseName有問題。 但我不知道該如何解決這個問題。

任何建議將有所幫助。

回答

1

從我的理解你需要有一個默認資源,然後添加語言特定的資源。所以你的情況你會(假設連接是默認值):

  • Language.resx
  • Language.fa.resx

已經產生了,這樣所有的代碼你不應該將資源文件」不得不編寫代碼來生成資源管理器。只需訪問Language.ResourceManager屬性即可。

+0

+1謝謝你的隊友。而已。 – saber