Получение информации из XML2

213
17 февраля 2018, 20:09

Добрый день. Пытаюсь распарсить XML в Visual Studio, но не получается сделать структуру как это сделано в XML. Когда начинаю разбирать созданный объект, я не вижу в структуре классов набор данных в тегах <ФЛ> как в XML. Классы делал с помощью команды xsd /c file.xml. Хотя при открытии xsd схемы в VS в виде модели, то там все правильно. Прошу помощи.... :

СписокРешений Obj = new СписокРешений();
            System.Xml.Serialization.XmlSerializer reader = new System.Xml.Serialization.XmlSerializer(Obj.GetType());
            System.IO.StreamReader file = new System.IO.StreamReader(context.File.ContentFilePath);
            Obj = (СписокРешений)reader.Deserialize(file);
            foreach (var x in Obj.СписокАктуальныхРешений)
            {
                if (x != null)
                {
                    Result_TypeID = x.ТипРешения.Идентификатор;
                    Result_Type_Title = x.ТипРешения.Наименование;
                    Result_Date = x.ДатаРешения;
                    Result_Number = x.НомерРешения;
                    Agency = x.Орган;
                    Type_SolutionID = x.ВидРешения.Идентификатор;
                    Type_Solution_Title = x.ВидРешения.Наименование;
                    Person_ID = x.СписокСубъектов[0].ИдСубъекта;
                    Person_TypeID = x.СписокСубъектов[0].ТипСубъекта.Идентификатор;
                    Person_Type_Title = x.СписокСубъектов[0].ТипСубъекта.Наименование;
                 }
            }

Вот Структура XML:

<?xml version="1.0"?>
<СписокРешений xmlns:xs="http://www.w3.org/2001/XMLSchema-instance">
<ВерсияФормата>1.0</ВерсияФормата>
<ДатаСписка>2017-12-26</ДатаСписка>
<СписокАктуальныхРешений>
    <Решение>
        <ТипРешения>
            <Идентификатор>0</Идентификатор>
            <Наименование>Решение</Наименование>
        </ТипРешения>
        <НомерРешения>0</НомерРешения>
        <ДатаРешения>2016-08-11</ДатаРешения>
        <Орган>Какой-то орган</Орган>
        <ВидРешения>
            <Идентификатор>0</Идентификатор>
            <Наименование>Какое-то наименование</Наименование>
        </ВидРешения>
        <СписокСубъектов>
            <Субъект>
                <ИдСубъекта>0000</ИдСубъекта>
                <ТипСубъекта>
                    <Идентификатор>0</Идентификатор>
                    <Наименование>Физическое лицо</Наименование>
                </ТипСубъекта>
                    <ФЛ>
                        <ФИО>ФИО</ФИО>
                        <Фамилия>Фамилия</Фамилия>
                        <Имя>Имя</Имя>
                        <Отчество>Отчество</Отчество>
                        <ФИОЛат>ФИО_Лат</ФИОЛат>
                        <ДатаРождения>1900-00-00</ДатаРождения>
                        <ГодРождения>1900</ГодРождения>
                        <МестоРождения>Где-то родился</МестоРождения>
                        <ИНН>000000000</ИНН>
                    </ФЛ>
                <РешениеПоСубъекту>Какое-то решение</РешениеПоСубъекту>
            </Субъект>
            <Субъект>
            </Субъект>
        </СписокСубъектов>
    </Решение>
    <Решение>
        <СписокСубъектов>
            <Субъект>
            </Субъект>
            <Субъект>
            </Субъект>
        </СписокСубъектов>
    </Решение>
    <Решение>
        <СписокСубъектов>
            <Субъект>
            </Субъект>
            <Субъект>
            </Субъект>
        </СписокСубъектов>
    </Решение>
</СписокАктуальныхРешений>
<СписокОтмененныхРешений/>
</СписокРешений>

READ ALSO
C# получить ID обновлённой записи в MS ACCESS

C# получить ID обновлённой записи в MS ACCESS

Нужно в приложении на c# получить ID только что обновлённой записи в MS Access, тк

173
Квартал в DateTimePicker

Квартал в DateTimePicker

Как добавить квартал в DateTimePicker?

128
VS 2015 Юнит-Тесты. Время выполнения увеличилось в 20 раз

VS 2015 Юнит-Тесты. Время выполнения увеличилось в 20 раз

Проблема с VS 2015Со вчерашнего дня время на выполнение 350 юнит-тестов проекта на моей машине увеличилось с 2 до 40 минут

150