2013-04-08 77 views
5

我的便攜式類庫中有一個資源文件,它當前擁有大約30個字符串。他們可以從我的Windows Phone 8應用程序訪問,並且已經在文件中的字符串正常工作。將字符串資源添加到PCL中的.resx會​​導致編譯錯誤

不過,現在當我嘗試爲我添加了新的字符串,它會導致編譯錯誤之前:

「的System.Type」不包含「大會」的定義,並沒有擴展方法「大會'接受'System.Type'類型的第一個參數可能會被發現(您是否缺少使用指令或程序集引用?)

查看.designer.cs文件很明顯,這是問題所在。當添加新字符串時,發生兩個更改:

  • using System.Reflection;消失
  • `global :: System.Resources.ResourceManager(「ViewModels.Resources.StringResources」,typeof(StringResources).Assembly);代替:

    new global :: System.Resources.ResourceManager(「ViewModels.Resources.StringResources」,typeof(StringResources).GetTypeInfo()。Assembly);

的.GetTypeInfo()和using語句消失是問題,但我不能把他們回來,因爲是由Visual Studio和變化所產生的文件回來。有任何想法嗎?

我能想到的唯一重要更改是新的Visual Studio 2012更新2?

另外值得注意: 添加一個字符串時,如果我在項目(WP8的應用程序或其他PCL)再添RESX其他地方那麼這個具有完全相同的行爲。

+0

我上更新2瑞普,不敢靠近的更新1個機馬上。這可能是非常痛苦的。將此發佈到connect.microsoft.com。直到您聽到回聲的解決方法是手動編輯.cs文件並避免設計人員。 – 2013-04-08 14:12:29

+0

對,完成https://connect.microsoft.com/VisualStudio/feedback/details/783211/resx-file-unable-to-be-edited-correctly-causes-compilation-error-in-generated-file#details – 2013-04-08 16:06:32

+0

@HansPassant,因爲它在連接後的末尾提到:我現在通過刪除和讀取resx和設計器文件來編譯它。但由於某些原因,在解決方案資源管理器中,設計器文件不再嵌套。 resx可以用新字符串更新,但設計器文件不能反映這些變化 - 所以不理想。我也無法解決如何重新連接它們。有任何想法嗎? – 2013-04-08 16:09:47

回答

相關問題