Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
02.11.2016, 12:55
|
|||
---|---|---|---|
Как сериализовать такой параметр XmlElementAttribute ? |
|||
#18+
Привет. Пишу клиента к сервису. Сгенерировался такой тип: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Т.е. внутри orderStatusEvent может быть как строковый тэг orgCode, так и лонговый тэг techCode. Как заполнить эту сущность, чтобы итоге сериализовалось в такой XML ? Код: c# 1. 2. 3.
Пытаюсь через анонимный тип: Код: c# 1. 2. 3. 4.
На OrderStatusEvent сериализатор не жалуется вроде. А вот на statusCode вылетает ошибка при вызове сервиса: Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.11.2016, 13:27
|
|||
---|---|---|---|
Как сериализовать такой параметр XmlElementAttribute ? |
|||
#18+
Вот XSD кусок Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.11.2016, 14:32
|
|||
---|---|---|---|
Как сериализовать такой параметр XmlElementAttribute ? |
|||
#18+
ProBiotek, Если что то object то надоть сувать туды XmlElement нужной структуры для сериализации и вытаскивать XmlElement при десериализации и дальше разбирать вручную. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.11.2016, 14:45
|
|||
---|---|---|---|
Как сериализовать такой параметр XmlElementAttribute ? |
|||
#18+
Решил проблему. Нагулил как сериализовать xs:choise правильно и подправил сгенеренный код под это. Наверное можно было и автоматически сгенеренный код как-то правильно вызывать, но нашел только такое решение. Переписал так Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55.
Тут интересно 2 момента: 1. "public string Item" вместо "public object Item" Без этого при сериализации вставлялось Код: xml 1.
Вроде бы не критично (валидатор сервиса пропустил), но если описать элемент как строку, то вышло без этой приписки. 2. Form = System.Xml.Schema.XmlSchemaForm.Unqualified Без этого при сериализации в элемент явно вставлялся неймспейс, что не проходило валидатор сервиса. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=20&mobile=1&tid=1400249]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 133ms |
0 / 0 |