C # / XML: «System.Xml.XmlDocument» не содержит определения «потомков» - PullRequest
4 голосов
/ 23 июля 2010

Я только что получил сообщение об ошибке от этого кода:

private void ShowXMLDatatoRTB() {
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("XMLFile.xml");

var persons = from person in xmlDoc.Descendants("Person")
        select new
            {
                Name = person.Element("Name").Value,
                    City = person.Element("City").Value,
                Age = person.Element("Age").Value,
            };

richTextBox1.Text = "";
foreach (var person in persons)
{
    richTextBox1.Text = richTextBox1.Text + "Name: " + person.Name + "\n";
            richTextBox1.Text = richTextBox1.Text + "City: " + person.City + "\n";
            richTextBox1.Text = richTextBox1.Text + "Age: " + person.Age + "\n\n";
    }

if (richTextBox1.Text == "")
            richTextBox1.Text = "No Results."; }

Я что-то упустил?

Ответы [ 3 ]

21 голосов
/ 23 июля 2010

Вам просто нужно переключиться с XmlDocument на XDocument.

4 голосов
/ 23 июля 2010

Вы пытаетесь использовать LINQ to SQL , но на самом деле используете DOM API старой школы. Вам нужно добавить ссылки на System.XML и System.Xml.Linq и использовать XDocument, а не XmlDocument.

0 голосов
/ 17 сентября 2015

Использование

XDocument xmlDoc = new XDocument();

целое число

XmlDocument xmlDoc = new XmlDocument(); `
...