views:

44

answers:

2

I just received an error a while ago from this code:

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."; }

Am I missing something?

+6  A: 

You just need to switch from XmlDocument to XDocument.

Jay Allard
+1  A: 

You are trying to use LINQ to SQL but actually using the old school DOM API. You need to add references to System.XML and System.Xml.Linq and use XDocument, not XmlDocument.

Igor Zevaka