У меня есть простой модульный тест и файл ресурсов в другой сборке с нейтральной культурой (DataSource.resx) и конкретной культурой (DataSource.fi-FI.resx).Неверная строка культуры из ResourceManager.GetString
Единичный тест просто проверяет, что я получаю правильную строку на правильном языке. Тестирование устройства отлично работает, если я запускаю его из Visual Studio. Но сбой, если я запустил его из командной строки с помощью mstest - он получает строку культуры по умолчанию вместо той, которую я говорю ей использовать.
Даже предоставление культуры в качестве параметра ResourceManager.GetString дает тот же результат.
Я предполагаю, что это связано с тем, что переводы находятся в другом собрании, но не уверены. Есть идеи? Спасибо !:)
испытания Единица измерения:
var cu = System.Globalization.CultureInfo.GetCultureInfo("fi-FI");
System.Threading.Thread.CurrentThread.CurrentUICulture = cu;
var trans1 = MyResources.Api.DataSource.Source_scrape;
Trace.WriteLine(trans1);
var res = MyResources.Api.DataSource.ResourceManager.GetString("Source_scrape", cu);
Trace.WriteLine(res);
Десять секунд google hit: http://stackoverflow.com/questions/9484355/why-are-resx-cultures-not-found-in-unit-tests –
Не нашел, что один, спасибо. Не решает мою проблему, даже если она, казалось, решила ее для них. Будет комментировать там. –