искать внутренний элемент, используя Xpath или LINQ to XML - PullRequest
0 голосов
/ 28 октября 2011

У меня есть XML, подобный следующему

<?xml version="1.0" ?> 
<Hospital>
  <DR>
    <Salary>1000</Salary>
    <bonus> 3 </bonus>
  </DR>
  <Nurse>
    <Shift> </Shift>
  </Nurse>
</Hospital>

Я хочу найти в узле Dr субэлемент, например, если он не существует, вставить его и обновить файл,

и узнать, как его обновитьверсия XML, использующая C #

1 Ответ

0 голосов
/ 28 октября 2011

Что касается обновления версии XML, то пока парсеры и API-интерфейсы Microsoft Microsoft поддерживают исключительно версию XML 1.0, поддержка XML версии 1.1 не поддерживается.

Что касается проверки того, что элемент DR не имеет foo дочерний элемент и добавление одного, который вы можете сделать, например

XDocument doc = XDocument.Load("input.xml");
XElement dr = doc.Root.Element("DR");
if (dr.Element("foo") == null)
{
  dr.Add(new XElement("foo", "..."));
}
doc.Save("output.xml"); // of course here you can overwrite the original file if needed
...