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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.04.2015, 08:59   #1
exivmaks
Пользователь
 
Регистрация: 03.03.2015
Сообщений: 10
По умолчанию Искать до конца

Всем привет.
Никак не могу решить такой вопрос:
Нужно узнать количество <SUMV_USL> == 242 только у <CODE_MD> ==76.
У меня же получается что доходит до первого совпадения и уходит на другой <ZAP>
Как продолжить поиск в том же <ZAP> пока не дойдет до его конца.

есть XML файл (вернее его часть).
Код XML

Код HTML:
<ZAP>
        <SUMV_USL>242</SUMV_USL>
        <CODE_MD>76</CODE_MD>
        <SUMV_USL>242</SUMV_USL>
        <CODE_MD>100</CODE_MD>
        <SUMV_USL>242</SUMV_USL>
        <CODE_MD> 76</CODE_MD>
  </ZAP>
<ZAP>
        <SUMV_USL>300</SUMV_USL>
        <CODE_MD>76</CODE_MD>
        <SUMV_USL>300</SUMV_USL>
        <CODE_MD>76</CODE_MD>
        <SUMV_USL>242</SUMV_USL>
        <CODE_MD> 76</CODE_MD>
  </ZAP>
Вот мой код:

Код:
XDocument xml = XDocument.Load(uslug);
               
                                
                var xmsluch = from SLUCH in xml.Descendants("ZAP")
                              where SLUCH.Element("CODE_MD").Value == "76"
                              where SLUCH.Element("SUMV_USL") != null && SLUCH.Element("SUMV_USL").Value == "242"  
 
                              select new
                              {
                                  SUM = SLUCH.Element("SUMV_USL").Value,
                                  
                               };
                foreach (var x in xmsluch)      
                {
                 
                    listBox1.Items.Add(x.SUM);
 
                }
                   label1.Text = listBox1.Items.Count.ToString();
ПОЖАЛУЙСТА ПОМОГИТЕ!!!
СРОЧНО НУЖНО СООРУДИТЬ ОТЧЕТ С ПОМОЩЬЮ ЭТОГО!!!
exivmaks вне форума Ответить с цитированием
Старый 13.04.2015, 10:45   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Условие задачи формулируйте нормально. Если вам нужен <SUMV_USL> == 242, за которым следует (sibling) <CODE_MD> ==76, то это и ищите.

Что-то типа "найти все SUMV_USL where Value == 242 && NextNode.Value == 76"
Можно просто взять содержимое всех ZAP и в цикле идти смотря NextNode.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
где искать vova4 Общие вопросы C/C++ 3 25.04.2014 09:39
Помогаем искать программы Levsha100 Свободное общение 265 02.04.2012 14:09
Где искать.. misher Свободное общение 0 01.07.2010 21:56
Где искать программистов? ulis777 Свободное общение 9 29.12.2008 15:48
Подскажите где искать Broth PHP 1 03.10.2008 01:26