Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2013, 13:05   #1
ArtemKrass
Пользователь
 
Регистрация: 19.06.2012
Сообщений: 13
По умолчанию Как найти недостающий элемент (Json.Net)?

Имеются два Массива Json:
Код:
string str1 = "[{\"id\": 81453}, {\"id\": 55254},{\"id\": 64615}, {\"id\": 4578}, {\"id\": 5555}]";
JArray json1 = JArray.Parse(str1);
 
string str2 = "[{\"id\": 81453}, {\"id\": 55254},{\"id\": 64615}]";
JArray json2 = JArray.Parse(str2);
Мне нужно сравнить их, и в случае если в json2 отсутствует элемент(ы) который есть в json1 ({\"id\": 4578}, {\"id\": 5555}), добавить его в json2.

Возможно ли такое выполнить простым циклом, без Linq?
ArtemKrass вне форума Ответить с цитированием
Старый 30.03.2013, 16:07   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
Возможно ли такое выполнить простым циклом, без Linq?
а Linq вы думаете это сложные циклы?
eval вне форума Ответить с цитированием
Старый 31.03.2013, 10:24   #3
ArtemKrass
Пользователь
 
Регистрация: 19.06.2012
Сообщений: 13
По умолчанию

Извиняюсь, я имел ввиду без Лямбда выражений...
ArtemKrass вне форума Ответить с цитированием
Старый 01.04.2013, 09:04   #4
ArtemKrass
Пользователь
 
Регистрация: 19.06.2012
Сообщений: 13
По умолчанию

Вот решение:
Код:
json1.Where(j1 => !json2.Any(j2 => (int) j1["id"] == (int) j2["id"])).ToList().ForEach(_=>Console.WriteLine("нет элемента " + _["id"]));
Как это же сделать через обычный цикл? Возможно ли?
ArtemKrass вне форума Ответить с цитированием
Старый 01.04.2013, 09:30   #5
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Where, ForEach это обыкновенные for-ы (ну или foreach-и), с возвратом коллекций.
замените хотя-бы Where, далее поймете
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в JSON выразить объект? Utkin Общие вопросы по программированию, компьютерный форум 6 16.06.2012 00:01
Как заменить элемент элемент одномерного массива? Паскаль Женька Good Помощь студентам 5 21.12.2011 00:07
Как найти в двумерном массиве МАХ элемент каждой строки? Jasper92 Общие вопросы C/C++ 9 16.12.2009 12:58
Как найти определённый текст в TextBox'е(Visual Basic.NET) reyn90 Помощь студентам 0 21.06.2009 02:48