Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Не удаляются старые значения из XML


Автор: wester 28.2.2013, 10:46
решено
Доброго времени суток

Есть код
 
Код

xDoc.Root.Element("last").Elements().Remove(); // 1
            foreach (var name in SettingGetter.LastSongList) //2
            {
                var x = new XElement("item");
                x.Value = name.SongName;
                x.SetAttributeValue("genre", name.GenreName);
                xDoc.Root.Element("last").Add(x);
            }


и xml вида
Код

<settings>
  <last>
    <item genre="club_house">old_value</item>
    <item genre="electrohouse">new_value</item>
    <item genre="club_house">new_value</item>
  </last>
<settings>


Проблема в том, что старые элементы item из last не удаляются,а добавляются к last, когда есть цикл foreach. Но когда цикла нет, все из last удаляется
то есть должны получить вот такое в итоге  
Код

<settings>
  <last>
    <item genre="electrohouse">new_value</item>
    <item genre="club_house">new_value</item>
  </last>
<settings>


как можно решить ?

решено

проблема была в коллекции, были лишние элементы которые добавлялись в xml.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)