powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / XML Linq parsing
3 сообщений из 3, страница 1 из 1
XML Linq parsing
    #39865762
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть xml файл:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<?xml version="1.0" encoding="utf-8"?>
<resultset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <row>
  <field name="Артикул">aaa1</field>
  <field name="point">1</field>
  <field name="quant">4</field>
 </row>
 <row>
  <field name="Артикул">aaa2</field>
  <field name="sklpointad">2</field>
  <field name="quant">50</field>
 </row>
</resultset>



Делаю так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
class MyClass
{
    public string Артикул { get; set; }
    public string point{ get; set; }
    public string quant{ get; set; }
}
private void button1_Click(object sender, EventArgs e)
{
    XDocument xdoc = XDocument.Load(@"D:\st.xml");
    var items = from x in xdoc.Element("resultset").Elements("row")
    select new MyClass
    {
        Артикул = x.Attribute("Артикул").Value,
        point= x.Attribute("point").Value,
        quant= x.Attribute("quant").Value,
    };
}



Или так делаю:
Код: c#
1.
2.
3.
4.
5.
private void button1_Click(object sender, EventArgs e)
{
    var items = from x in xdoc.Element("resultset").Elements("row")
    select x;
}


Всегда items = null

Подскажите пожалуйста, что делаю не так?
...
Рейтинг: 0 / 0
XML Linq parsing
    #39865775
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
    public class RowField
    {
        public string Name { get; set; }
        public string Value { get; set; }
    }

        private void ReadXmlFile(string path)
        {
            XDocument xdoc = XDocument.Load(path);
            var items = from xe in xdoc.Element("resultset").Elements("row").Elements("field")
                        select new RowField
                        {
                            Name = xe.Attribute("name").Value,
                            Value = xe.Value
                        }; 
            
        }

ReadXmlFile(@"D:\st.xml");
...
Рейтинг: 0 / 0
XML Linq parsing
    #39867335
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бывает, надо указать Namespace

Код: c#
1.
2.
3.
var ns = xdoc.Root.GetDefaultNamespace();
var items = from x in xdoc.Element(ns + "resultset").Elements(ns + "row")
    select x;
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / XML Linq parsing
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]