Всем привет! При добавлении в Dictionary, некоторых данных p
public Dictionary<string, Dictionary<string,Dictionary<int,float>>> check = new Dictionary<string, Dictionary<string, Dictionary<int, float>>>();
check[player.Username]["spawn"][0] = x;
check[player.Username]["spawn"][1] = y;
check[player.Username]["spawn"][2] = z;
Получаю ошибку
System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.Collections.Generic.KeyNotFoundException: Данный ключ отсутствует в словаре.
в System.ThrowHelper.ThrowKeyNotFoundException()
в System.Collections.Generic.Dictionary`2.get_Item(TKey key)
Ошибка происходит из-за попытки обращения к элементу в пустом массиве.
Для решения можно воспользоваться инициализатором коллекции
например так:
Dictionary<string, Dictionary<string, Dictionary<int, float>>> check = new Dictionary<string, Dictionary<string, Dictionary<int, float>>>()
{
[player.Username] = new Dictionary<string, Dictionary<int, float>>()
{
["spawn"] = new Dictionary<int, float>()
{
[0] = x,
[1] = y,
[2] = z
}
}
};
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники