T
tirgra
Добрый день. Помогите пожалуйста разобраться в ситуации. Не могу получить доступ к атрибуту узла используя nvg.GetAttribute.
Необходимо удалить узел XML с дочерними узлами, атрибут которого отвечает условию.
При отладке видно, что у x свойство HasAttribute = true
doc = iXML.createXML();
doc.Load("db.xml");
XPathNavigator nvg = doc.CreateNavigator();
nvg.MoveToChild("NewDataSet","root");
nvg.MoveToChild("user","root");
while (true)
{
string x = nvg.GetAttribute("is_done","root");
if(x=="1")
{nvg.DeleteSelf();
doc.Save("db.xml");
break;
}
else
nvg.MoveToNext();
}
XML файл:
<?xml version="1.0" encoding="windows-1251"?>
<NewDataSet xmlns="root">
<user is_done="1" who="ivanov">
<messsage>расскать племяннику сказку!</messsage>
<repeat>15</repeat>
<datetime>14 декабря 2010 г.10:2</datetime>
</user>
<user is_done="1" who="ivanov">
<messsage>ekjnwdfkjwendkjwenkjwrgwerg</messsage>
<repeat>15</repeat>
<datetime>14 декабря 2010 г.13:43</datetime>
</user>
</NewDataSet>
Спасибо.
Необходимо удалить узел XML с дочерними узлами, атрибут которого отвечает условию.
При отладке видно, что у x свойство HasAttribute = true
doc = iXML.createXML();
doc.Load("db.xml");
XPathNavigator nvg = doc.CreateNavigator();
nvg.MoveToChild("NewDataSet","root");
nvg.MoveToChild("user","root");
while (true)
{
string x = nvg.GetAttribute("is_done","root");
if(x=="1")
{nvg.DeleteSelf();
doc.Save("db.xml");
break;
}
else
nvg.MoveToNext();
}
XML файл:
<?xml version="1.0" encoding="windows-1251"?>
<NewDataSet xmlns="root">
<user is_done="1" who="ivanov">
<messsage>расскать племяннику сказку!</messsage>
<repeat>15</repeat>
<datetime>14 декабря 2010 г.10:2</datetime>
</user>
<user is_done="1" who="ivanov">
<messsage>ekjnwdfkjwendkjwenkjwrgwerg</messsage>
<repeat>15</repeat>
<datetime>14 декабря 2010 г.13:43</datetime>
</user>
</NewDataSet>
Спасибо.