.NET Core 1.1 資源文件問題
在我的 .NET Core 類庫項目中,當資源文件名中包含點時,資源文件不會更新。例如,當我在 .NET Core 項目中添加
Resources.en.resx或Resources.es.resx文件時,自定義工具無法生成或更新 C# 資源文件。這是錯誤消息:自定義工具 ResXFileCodeGenerator 無法為輸入文件“Resources.en.resx”生成輸出,但未記錄特定錯誤。
如果您知道任何解決方法或解決方法,請指出正確的方向
刪除目前
Resources目錄中的所有 .resx 文件。現在轉到您的
Resources目錄並右鍵點擊Add > New Item.在表格底部選擇
Resource File並輸入文件名。重要的是你第一次得到正確的名字並且不要重命名。您可以使用類似Resource.resx.這個第一個
Resource.resx文件應該有自己的設計器類。它還需要用於項目本地化的所有鍵和值,因此如果您有現有的Resource.en.resx,則可以將其中的值複製並粘貼到該項目中。如果您需要
IStringLocalizer<Resource>,或者換句話說,您需要以Resource某種方式引用該類,那麼您將需要轉到解決方案資源管理器並左鍵點擊Resource.resx. 在屬性框中有一個名為“自定義工具”的欄位。如果您希望從 resx 生成可公開訪問的類,則需要將其從 更改ResXFileCodeGenerator為PublicResXFileCodeGenerator.現在您可以添加單獨
Resource.ja.resx的Resource.es.resx文件。這些不需要在它們上執行自定義工具ResXFileCodeGenerator,因此您可以將其從屬性中刪除。這將修復您的錯誤消息。
只需解除安裝項目並重新載入它,錯誤就會消失。
- 在解決方案資源管理器中右鍵點擊項目 > 解除安裝項目
- 在解決方案資源管理器中右鍵點擊項目 > 重新載入項目