我有我的默認資源文件Resources.resx
其中Visual Studio很好地生成designer.cs
類,但是當我嘗試創建Resources.de-DE.resx
時,它不會生成。資源文件代碼不生成
我檢查了兩個文件的所有屬性都一樣。
它確實生成Resources1.resx
,但不生成Resources.de-DE.resx
或Resources.en-US.resx
。
我有我的默認資源文件Resources.resx
其中Visual Studio很好地生成designer.cs
類,但是當我嘗試創建Resources.de-DE.resx
時,它不會生成。資源文件代碼不生成
我檢查了兩個文件的所有屬性都一樣。
它確實生成Resources1.resx
,但不生成Resources.de-DE.resx
或Resources.en-US.resx
。
你好@TRS你可能會感到困惑,有一個Designer.cs目前對於Resources.resx並且應該有someDesigner.cs爲Resources.de-DE.resx但這而不是這種情況,因爲設計器文件對於所有資源文件都是相同的。並且在Designer.cs中創建的屬性也很常見,這意味着您將在每次轉換時使用此屬性,因此您可以製作的差異基於ResourceCulture。
這幫助我瞭解了爲什麼我沒有提供默認資源文件時沒有資源類。 –
是的,Designer resx文件保持空白。 你應該按照下面的步驟,它會100%的工作。 1)在任何文件夾下創建Resource.resx文件
2)set CustomTools = PublicResXFileCodeGenerator和 Build Action = Resource.resx文件屬性中的嵌入式資源。
3)現在創建不同語言的文件,如下面, Resources.en-US.resx Resources.nl-NL.resx等
4)如果MVC,在MVC模式是指這個命名空間爲項目.folder
5)更改的屬性中的一個,如下(實施例)
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MMM/yyyy}"), Display(Name = "dtMovinDate",ResourceType = typeof(Resources.Resource))]
public DateTime dtMovinDate { get; set; }
6)
In config file add this under System.web
<globalization enableClientBasedCulture="true" culture="en-US" uiCulture="en-US" />
7)重建項目並測試它。
它會工作。 designer.cs文件爲空的真正原因是資源designer.cs會根據您的web.config文件引用這些文件。
designer.cs *不*由RESX創建,由Visual Studio與類文件的對話框(用戶控件)一起創建的。你想達到什麼目的?當程序運行時,它會在本地resx中查找正確的字符串,如果失敗,它會查找默認的resx – Sayse
我有同樣的問題。如果我創建Resources.resx,則在Resources.Designer.resx中生成代碼。但是,如果將第一個文件重命名爲Resources.en.resx,則不會。 –