Всем здрасти! нужна помощь.
Есть такой код XML
Код:
<Предложение>
<Ид>29143b9a-40ac-11e5-80cb-f46d04388789</Ид>
<Наименование>Дверное полотно</Наименование>
<БитриксТеги></БитриксТеги>
<Группы>
<Ид>de10871c-55eb-11e5-80cb-f46d04388789</Ид>
</Группы>
<Картинка>exp-tov_files/iblock/418/418b1d4afc303a6052d67a1bf6f2a6f2.jpg</Картинка>
<ЗначенияСвойств>
<ЗначенияСвойства>
<Ид>CML2_ACTIVE</Ид>
<Значение>true</Значение>
</ЗначенияСвойства>
<ЗначенияСвойства>
<Ид>CML2_CODE</Ид>
<Значение>dvernoe_polotno_shponirovannoe_vela_glyanets_600_2000mm_osteklennoe_venge</Значение>
</ЗначенияСвойства>
<ЗначенияСвойства>
<Ид>CML2_TRAITS</Ид>
<Значение>Товары</Значение>
<ЗначениеСвойства>
<Значение>Товары</Значение>
<Описание>ВидНоменклатуры</Описание>
</ЗначениеСвойства>
<Значение>Товар</Значение>
<ЗначениеСвойства>
<Значение>Товар</Значение>
<Описание>ТипНоменклатуры</Описание>
</ЗначениеСвойства>
<Значение>ал991</Значение>
<ЗначениеСвойства>
<Значение>ал991</Значение>
<Описание>Код</Описание>
</ЗначениеСвойства>
<Значение>0</Значение>
<ЗначениеСвойства>
<Значение>0</Значение>
<Описание>Вес</Описание>
</ЗначениеСвойства>
</ЗначенияСвойства>
<ЗначенияСвойства>
в этом файле мне необходимо Наименование, Картинка и Код (ал991) с ним то и у меня проблема
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml.Linq;
namespace WindowsFormsApplication3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private DataTable CreateTable()
{
//создаём таблицу
DataTable dt = new DataTable("Friends");
//создаём три колонки
DataColumn colName = new DataColumn("Наименование", typeof(String));
DataColumn colAge = new DataColumn("Код", typeof(String));
DataColumn colPich = new DataColumn("Картинка", typeof(String));
//добавляем колонки в таблицу
dt.Columns.Add(colName);
dt.Columns.Add(colAge);
dt.Columns.Add(colPich);
return dt;
}
private DataTable ReadXml()
{
DataTable dt = null;
try
{
//загружаем xml файл
XDocument xDoc = XDocument.Load(@"../../tes.xml");
//создаём таблицу
dt = CreateTable();
DataRow newRow = null;
//получаем все узлы в xml файле
foreach (XElement elm in xDoc.Descendants("Предложение"))
{
//создаём новую запись
newRow = dt.NewRow();
//проверяем наличие xml элемента name
if (elm.Element("Наименование") != null)
{
//получаем значения элемента name
newRow["Наименование"] = elm.Element("Наименование").Value;
}
if (elm.Element("Картинка")!= null)
{
newRow["Картинка"] = elm.Element("Картинка").Value;
}
//добавляем новую запись в таблицу
dt.Rows.Add(newRow);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return dt;
}
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = ReadXml();
}
}
}
Не могу сообразить