Это сообщение в Игры Из могли бы быть соответствующими/интересными.
Вы можете вручную изменить свойство Культура
класса FooBar, создаваемого Visual Studio. Или, если вы напрямую используете класс ResourceManager , вы можете использовать перегрузку GetString , которая принимает желаемый язык в качестве параметра.
Вот код, который я использовал для получения файла ресурсов по имени культуры - это vb.net, но вы поняли идею.
Dim reader As New System.Resources.ResXResourceReader(String.Format(Server.MapPath("/App_GlobalResources/{0}.{1}.resx"), resourceFileName, culture))
И если вы хотите вернуть его как словарь :
If reader IsNot Nothing Then
Dim d As New Dictionary(Of String, String)
Dim enumerator As System.Collections.IDictionaryEnumerator = reader.GetEnumerator()
While enumerator.MoveNext
d.Add(enumerator.Key, enumerator.Value)
End While
Return d
End If
Вы можете вручную изменить культуру в вашем классе доступа к ресурсам. Но это в некоторой степени не рекомендуется, потому что это приводит к множеству других проблем интернационализации.
Например, вам придется:
Так что, если вообще возможно, измените текущую культуру пользовательского интерфейса для текущий поток.
Используйте вторую перегрузку GetValue: -
.GetValue(null, BindingFlags.GetProperty, null, null, CultureInfo.GetCultureInfo("sv-SE"))