Linq to Xml to Datagridview

Правильно, начинаю сходить с ума здесь. У меня есть следующий код:

var query = (from c in db.Descendants("Customer") select c.Elements()); dgvEditCusts.DataSource = query.ToList(); 

В этом случае db относится к вызову XDocument.Load. Как я могу получить данные в DataGridView?

Просто подумал, что я должен упомянуть: он возвращает полностью пустой dgv.

Не то, чтобы XML был слишком большой, но вот пример:

   1 2010-04-13T21:59:46.4642+01:00 Customer Name 
Address
AB1 2XY 0123456789 0123456789 email@address.com

Когда вы вызываете db.Descendants("Customer") вы возвращаете ТОЛЬКО элементы, в которых есть имя Customer . НЕ это дети. См. Документы MSDN .

Поэтому, когда вы вызываете c.Elements() он пытается получить дочерние элементы Клиента, которые не существуют b / c, они были отфильтрованы.

Я думаю, что это может сработать, если вы Customer фильтрацию Customer .

Ах, неважно, я в конце концов отработал ответ на свой вопрос. Вот код для всех, у кого может возникнуть эта проблема:

 var query = from c in db.Descendants("Customer") select new { CustomerNumber = Convert.ToInt32((string)c.Element("CustomerNumber").Value), Name = (string)c.Element("Name").Value, Address = (string)c.Element("Address").Value, Postcode = (string)c.Element("PostCode1").Value + " " + c.Element("PostCode2").Value }; dgvEditCusts.DataSource = query.ToList();