Я создал сборку и позже переименовал ее.
Затем я начал получать ошибки во время выполнения при вызове:
toolsMenuName = resourceManager.GetString(resourceName);
Переменная resourceName
"enTools" во время выполнения.
Не удалось найти ресурсы подходящий для указанной культуры или нейтральной культурой. Убедиться "Jfc.TFSAddIn.CommandBar.resources" был правильно встроен или связан с сборка "Jfc.TFSAddIn" при компиляции времени или что весь спутник необходимые сборки являются загружаемыми и полностью подписан.
Код:
string resourceName;
ResourceManager resourceManager = new ResourceManager("Jfc.TFSAddIn.CommandBar", Assembly.GetExecutingAssembly());
CultureInfo cultureInfo = new CultureInfo(_applicationObject.LocaleID);
if(cultureInfo.TwoLetterISOLanguageName == "zh")
{
CultureInfo parentCultureInfo = cultureInfo.Parent;
resourceName = String.Concat(parentCultureInfo.Name, "Tools");
}
else
{
resourceName = String.Concat(cultureInfo.TwoLetterISOLanguageName, "Tools");
}
toolsMenuName = resourceManager.GetString(resourceName); // EXCEPTION IS HERE
Я вижу файл CommandBar.resx, включенный в проект, я могу открыть его и увидеть там строку "enTools". Кажется, что либо ресурсы не включены в сборку, либо ресурсы включены, но .NET не может разрешить имя.