Код файла ресурса не сгенерирован

У меня есть файл ресурсов по умолчанию Resources.resx, для которого visual studio красиво генерирует класс designer.cs, но когда я пытаюсь создать Resources.de-DE.resx, он не генерируется.

Я проверил все свойства для обоих файлов одинаковые.

Он генерирует для Resources1.resx, но не для Resources.de-DE.resx или Resources.en-US.resx.

Ответ 1

hello @TRS вас может смутить, что существует Designer.cs для Resources.resx, и должно быть someDesigner.cs для Resources.de-DE.resx, но это не так, потому что файл конструктора будет одинаковым для всех файлов ресурсов. а также свойство, созданное в Designer.cs, также является общим, что означает, что вы будете использовать это свойство для каждого преобразования, поэтому разница, которую вы можете сделать, основана на ResourceCulture.

Ответ 2

Да, файл конструктора resx остается пустым. вы должны следовать нижеуказанным шагам, он будет работать на 100%. 1) Создайте файл Resource.resx в любой папке

2) установите CustomTools = PublicResXFileCodeGenerator и Build Action = встроенный ресурс в файле ресурса Resource.resx.

3) Теперь создайте различные языковые файлы, как показано ниже, Resources.en-US.resx Resources.nl-NL.resx и т.д.

4) Если MVC в вашей модели MVC ссылается на это пространство имен как project.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.