Инициализация проблем со словарем

Вместо того, чтобы просто инициализировать

Screens (Dictionary<GameObject, string> Screens) values

этот код создает новые экраны gameObject с этими связанными значениями.

Проблема здесь:

Screens[new GameObject(cont.Key)] = cont.Value;

Это результат для экранов: «Экраны создаются снова с соответствующими значениями RightOuterPad=, LeftOuterPad=, LeftScreen=, RightOuterPad=,OPENPAD1-video-2, LeftOuterPad=OPENPAD1-video-1, LeftScreen=MAINBOARD1-video-2

Dictionary<string, string> content = new Dictionary<string, string>();

content = ReadConfigFile(path);

Dictionary<GameObject, string> Screens = config.Screens;

List<string> ScreensNames = new List<string>();

foreach (var screen in Screens)
{
    ScreensNames.Add(screen.Key.name);
}

foreach (KeyValuePair<string, string> cont in content)
{
    if (ScreensNames.Contains(cont.Key))
    {
        Debug.Log(Screens);
        Screens[new GameObject(cont.Key)]= cont.Value;
    }
}

Какую ошибку вы получаете?

Peter Smith 28.05.2019 13:52

@PeterSmith вместо того, чтобы инициализировать значения словаря, создает его снова, связывая нужные значения

gh.amani 28.05.2019 14:13

Хорошо, но в чем проблема?

Peter Smith 28.05.2019 14:22

Это результат для экранов: «Экраны создаются снова со связанными значениями. -video-1 RightScreen=MAINBOARD2-video-2

gh.amani 28.05.2019 14:37

Не могли бы вы включить приведенный выше комментарий в свой вопрос и сказать, что вы ожидаете. Спасибо

Peter Smith 28.05.2019 14:43
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
5
84
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Похоже, то, что вы пытаетесь сделать,

using System.Linq;

...

var keyObjectReference = Screens.keys.FirstOrDefault(o => string.Equals(o.name, cont.Key));
config.Screens[keyObjectReference] = cont.Value;

вместо этого извлекается первый GameObject, имя которого совпадает с именем cont.Key, и вместо этого используется эта ссылка для доступа к правильной записи в словаре config.Screens.

Другие вопросы по теме

Unity 3D Остановить появление частиц после удара о стену
Как решить «Не удалось зарегистрироваться для получения удаленных уведомлений», чтобы получать push-уведомления в игре iOS, созданной с помощью «Unity Cloud Build»
Убедитесь, что призовой фонд не присуждает участникам с равным количеством очков меньше, чем участникам, набравшим худшие баллы
Unity3D не видит буквы казахского языка
Облегченный конвейер рендеринга не поддерживается в Oculus Go? Потому что приложение вылетает при открытии
Как изменить точку попадания на прицел?
Разделите x на y частей в порядке уменьшения
(Unity) Включение опции App Bundle (Google Play) при сборке с помощью BuildPipeline?
Должен ли я писать политику конфиденциальности, если я использую аналитику единства, рекламу единства или facebook sdk?
Есть ли у синематографа способ перенацелить игрока после того, как он будет уничтожен и создан как клон?