У меня есть Enum, содержащий идентификаторы ресурсов, называемые Resources.Id.
Другой скрипт Resources.cs
имеет методы для генерации определенных строк в соответствии с предоставленным Enum. Я хочу перебрать все перечисления, храня некоторые связанные с ними строки в словаре.
Код работает до последнего обратного вызова в QtyAddress. Я сделал некоторую отладку, и трассировка стека теряется сразу после возврата.
PlayerData.cs
Dictionary<string, string> list = new Dictionary<string, string>();
// Resources
foreach (Resources.Id resource in Enum.GetValues(typeof(Resources.Id)))
{
string key = Resources.QtyAddress(resource);
list.Add(key , "0");
}
Resources.cs
public static string NamePlural(Id id)
{
string String;
switch (id)
{
case (Resources.Id.Technology):
String = "Technology";
break;
default:
String = "NONE";
break;
}
return String;
}
public static string QtyAddress(Id id)
{
string String;
switch (id)
{
case (Resources.Id.Technology):
String = string.Format("{0}Qty", NamePlural(id));
break;
default:
String = "NONE";
break;
}
return String;
}
Нет сообщения об ошибкена консоли или в трассировке стека.
Отладка проходит через вызов возврата в NamePlural()
и останавливается непосредственно перед возвратом QtyAddress()
. Все строки установлены правильно в соответствии с отладчиком.