Я использую встроенный .resx для локализации приложения asp.net. Кажется, что независимо от текущей культуры, нейтральный культурный ресурс всегда возвращается. Код, который я использую для получения значения, выглядит следующим образом:
protected string GetResource(string name)
{
return Localization.ResCore.ResourceManager.GetString(name, System.Threading.Thread.CurrentThread.CurrentCulture);
}
Я указал на одной странице, что культура "es-PE" (Перу). Когда я прерываю функцию GetResource, я могу убедиться, что CurrentCulture является "es-PE" и что ResourceManager содержит ResourceSet, соответствующий этой культуре. Однако возвращаемая строка всегда из нейтрального набора культур.
Встраиваемые файлы имеют следующие имена:
- ResCore.resx
- ResCore.es.resx
- ResCore.es-PE.resx
Любая помощь приветствуется.