|
Сериализация ХДТО - как получить реквизиты объекта
| ☑ |
0
Kateryne
08.04.14
✎
16:27
|
Разбираюсь с механизмом ХДТО.
Не поняла, а что, под сериализацией объекта в XML понимается запись только гуида этого объекта?
Сериализатор = Новый СериализаторXDTO(ФабрикаXDTO);
КонтрагентОбъект = Справочники.Контрагенты.НайтиПоНаименованию("Тест");
ОбъектXDTO = Сериализатор.ЗаписатьXDTO(КонтрагентОбъект);
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл("C:\1\test.xml");
ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, ОбъектXDTO);
ЗаписьXML.Закрыть();
Ожидала, что в файл будет записан не просто гуид объекта, но и все его реквизиты (ссылочные - гуидами, простого типа - значениями).
Может я где-то не разобралась?
Как-то можно преобразовать объект в XML без описания пакета ХДТО или прочего ручного формирования перечня реквизитов?
|
|
1
Serginio1
08.04.14
✎
16:32
|
ОбъектXDTO = Сериализатор.ЗаписатьXDTO(КонтрагентОбъект.ПолучитьОбъект());
|
|
2
VikingKosmo
08.04.14
✎
16:32
|
А может записывать стоит объект, а не ссылку?
|
|
3
Maxus43
08.04.14
✎
16:33
|
НовыйСXDTO = Новый СериализаторXDTO(ФабрикаXDTO);
// получим объект справочника
Спр = Справочники.Номенклатура.НайтиПоКоду(14).ПолучитьОбъект();
// сериализуем его в XDTO
СпрXDTO = НовыйСXDTO.ЗаписатьXDTO(Спр);
|
|
4
romix
08.04.14
✎
16:33
|
Да глюкодром это имхо. Можно же просто писать XML.
|
|
5
Kateryne
08.04.14
✎
16:45
|
(2) Я невнимательный тормоз. Была же уверена, что ПолучитОбъект был в коде - вон, даже имя переменной КонтрагентОбъект :)))
Все, спасибо!
|
|
6
Kateryne
08.04.14
✎
16:50
|
(4) Почему глюкодром? Медленно работает, или нестабильно?
Объект нужен для передачи через веб-сервис, мне кажется, что XDTO тут удобнее.
|
|