|
Проблема с определением типа xdto
| ☑ |
0
iceman2112
22.06.17
✎
06:59
|
Есть такой элемент XML
<sales>
<sale>
Тут могут быть разные свойства
</sale>
<sale>
Тут могут быть разные свойства
</sale>
</sales>
Мне из sale нужно обработать лишь часть свойств
В настройках пакета указал:
У типа sales указано только Имя свойство "sale" (Максимальное = 200, Фиксированное = Ложь, Форма = Элемент
У типа sale (Открытый = Истина, Смешанный = Истина, Упорядоченный = Ложь, Последовательный = Истина
И 4 свойства (типа число и строка)
Ну и вот такая петрушка:
Ошибка преобразования данных XDTO:
Чтение объекта типа: { - [650,1709]
Проверка дополнительного свойства:
форма: Текст
имя:
Кто подскажет в чем может быть проблема?
|
|
1
Рэйв
22.06.17
✎
07:13
|
Структура должна быть строго такой какой ожидается в приемнике. Если что не совпадет даже в мелочи оно не прочитается. Так что насчет "обработать лишь часть свойств" можешь забыть. Поля должны быть все и только такие какие ожидаются
|
|
2
iceman2112
22.06.17
✎
07:18
|
хорошо, а можно тогда свойству "sale" какой то произвольный тип задать? а я там "свои" сам приведу к нужному типу
|
|
3
Рэйв
22.06.17
✎
07:21
|
(2)Нет скорее всего . Типы тоже должны быть только такие какие ожидаются
|
|
4
Рэйв
22.06.17
✎
07:23
|
Если хочешь передать только как-то по-своему, значит надо пользовать чтото другое, а не xdto
|
|
5
RomaH
naïve
22.06.17
✎
07:26
|
(0) а пакет обязательно?
|
|
6
iceman2112
22.06.17
✎
07:28
|
да уже все настроено на xdto, а теперь в aale новый свойства добавили
|
|
7
4St
22.06.17
✎
07:36
|
(0) Посмотри внимательно на поле "Форма" в этих элементах: Текст, Элемент, Атрибут. Возможно, в этом проблема.
И еще, насколько помню, Комбинация флагов у типа Sale - (Открытый, Смешанный) корректно работает только тогда, когда все известные свойства описаны в схеме. Как только добавляется новый атрибут/элемент - все, парсинг XDTO падает.
Поэтому форматы, которые со временем могут расширяться, я стараюсь читать без схемы.
|
|