Как добавить некоторое число к значению элемента XML (оно объединяется, а не добавляется)? - PullRequest
0 голосов
/ 17 апреля 2020

Я застрял при добавлении 10 (числа) к значению элемента в XML linq ...

До сих пор я придумал этот код:

            XDocument XMLDoc = XDocument.Load(@"C:\Users\...");

            var change = from block in XMLDoc.Descendants("Head")
                         where double.Parse(block.Element("Tenon").Value, CultureInfo.InvariantCulture) < 13
                         select block.Element("Tenon");


            foreach (XElement x in change)
            {
                double number = 10;
                x.Value = (double.Parse(x.Value, CultureInfo.InvariantCulture) + number).ToString();


                Console.WriteLine(x.Value);
             }

            XMLDoc.Save(@"C:\Users\...");

            Console.ReadLine();

aaaaaaaaaaa, и я застрял.

Он объединяет вместо добавления, я знаю, x.Value это строка, но я буквально понятия не имею, потому что я попробовал почти все ... Вы можете помочь?

1 Ответ

0 голосов
/ 17 апреля 2020

Предоставленный код добавляет номер правильно. Единственная проблема, которую я вижу - вы только проверяете и выбираете первый узел Tenon из головы.

Вместо этого попробуйте следующее выражение linq:

var change = from block in XMLDoc.Descendants("Head")
                    from tenon in block.Elements("Tenon")
                    where double.Parse(tenon.Value) < 13
                    select tenon;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...