У меня есть два файла ресурсов под названием String.arg.resx и String.en.rex в проекте под названием Common
Затем у меня есть класс LocalizationService в моем сервисном проекте, код следующий:
public class LocalizationService
{
private ResourceManager resourceManager;
private CultureInfo cultureInfo;
public LocalizationService()
{
SetDefaultCultureAndResource();
}
private void SetDefaultCultureAndResource()
{
cultureInfo = CultureInfo.CreateSpecificCulture("en");
resourceManager = new ResourceManager("Common.Resources.String", Assembly.GetAssembly(typeof(Common.Resources));
}
public void ChangeLanguage(Languages languages)
{
switch (languages)
{
case Languages.Español:
cultureInfo = CultureInfo.CreateSpecificCulture("es");
resourceManager = new ResourceManager("Common.Resources.String", typeof(LocalizationService).Assembly);
break;
case Languages.English:
cultureInfo = CultureInfo.CreateSpecificCulture("en");
break;
default:
cultureInfo = CultureInfo.CreateSpecificCulture("en");
break;
}
}
public string GetString(string value)
{
return resourceManager.GetString(value, cultureInfo);
}
}
Но строка resourceManager = new ResourceManager("Common.Resources.String", Assembly.GetAssembly(typeof(Common.Resources));
не работает, потому что я не вижу Common.Resources.
Какой метод класса Assembly мне следует использовать?