Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
В которых заголовки отдельно, затем строки отдельно, поля в них расположены в том же порядке, что и в заголовке. пример: Код: xml 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. Я бы с удовольствием читал эту xml с помощью встроенных средств, только не всегда понятно, что за поле я читаю. Приходится всякими внутренними циклами и массивами исхищряться. Но такой код другим людям боюсь показывать) Как это делается правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2019, 01:09 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
хорошо я согласен, ну как.. удобно наверное читать в DataTable. сначала считываете колонки, затем данные, записывая значения в строку по порядку. если данных много, то читать методом sax. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2019, 03:57 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
хорошо я согласенКак это делается правильно? Зависит от того, что вы подразумеваете под "правильно", что нужно в итоге, и от объема данных. Если последний позволяет выполнить разбор DOM, то можно причесать исходный XML к удобоваримому виду с помощью XSLT. Например, если есть уверенность, что все имена колонок могум быть именами атрибутов, то я бы сделал так: Исходный XML: Код: xml 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. XSLT: Код: xml 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. Результат: Код: xml 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. Дальше можно просто создать класс, промапить его атрибутами, и получить список экземпляров с помощью XmlSerializer - как-то так: Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2019, 08:03 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2019, 08:25 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
Сон Веры Павловны, чёт мне кажется, это лишнее. можно сразу читать xml со структурой его данных. явно она динамическая, исходя из наличия секции Header. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2019, 10:06 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
вообще, мне изначально это для SSIS нужно было. Очень крутое решение! спасибо. Буду подробнее смотреть xslt ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2019, 22:06 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
хорошо я согласенвообще, мне изначально это для SSIS нужно было. О. Так может, действительно все эти XSLT и XmlSerializer лишние. Насколько я понимаю, конечная задача - разобрать этот XML, и залить куда-то в базу? Может, проще было бы передать его как есть на сервер (в табличную функцию, ХП, или скрипт), и там разобрать с помощью XQuery? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 06:51 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 08:56 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
Сон Веры Павловны, решение конечно рабочее, но не айс. там заголовок есть, надо от него читать данные, чтобы потом сюрпризов не было, сталкивался не раз, когда разработчик МОГ работать с моделью, ну хотя бы валидировать, но нет.. зачем? решим в лоб :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 09:15 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
нужно данные считывать именно так: row["Фамилия"] row["Отчество"] ... вот как это приходит в схеме. там же не для красоты секция <Head>. и не для того, чтобы глядя на него захардкодили решение. если конечно это не разовая операция. это раз. два. при работе с XML, содержащие табличные данные, всегда нужно использовать SAX. всегда. какой ещё XElement.Load? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 09:18 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
hVosttпри работе с XML, содержащие табличные данные, всегда нужно использовать SAX. всегда. Ну, я бы не был так категоричен. Это то же, что и DataSet vs DataReader - инога более подходит одно, иногда другое, it depends. hVosttкакой ещё XElement.Load? LINQ to XML , вестимо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 09:32 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
hVosttСон Веры Павловны, решение конечно рабочее, но не айс. там заголовок есть, надо от него читать данные, чтобы потом сюрпризов не было, сталкивался не раз, когда разработчик МОГ работать с моделью, ну хотя бы валидировать, но нет.. зачем? решим в лоб :) Какая при такой структуре валидация? Тут даже XSD никакой не напишешь. Остается только программная валидация при загрузке значений, и на заголовок тут уже можно положить. Ну, собственно, в последнем примере валидация вполне есть - по типам данных. По позициям она не нужна, поскольку ТС писал, что строки идут в той же последовательности, что и заголовки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 10:08 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
Сон Веры ПавловныКакая при такой структуре валидация? Тут даже XSD никакой не напишешь. Остается только программная валидация при загрузке значений, и на заголовок тут уже можно положить. Ну, собственно, в последнем примере валидация вполне есть - по типам данных. По позициям она не нужна, поскольку ТС писал, что строки идут в той же последовательности, что и заголовки. Ну в смысле, какая? Если ты получаешь данные запроса, у тебя названия колонок есть. Ты же не обращаешься к значениям по индексу? :) Я понимаю, в каком-нибудь ORM такое может использоваться, но не в человеческих исходниках. fkthatНу, я бы не был так категоричен. Это то же, что и DataSet vs DataReader - инога более подходит одно, иногда другое, it depends. Никаким It depends-ом тут не пахнет. Табличные данные надо грузить SAX-ом. Или считаете, это пипец как сложно? Код привести? :) Он не сложнее LINQ to XML. Если не знаем, то так лучше и сказать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 15:12 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
Сон Веры ПавловныПо позициям она не нужна, поскольку ТС писал, что строки идут в той же последовательности, что и заголовки. Я про заголовок. Заголовок описывает структуру данных. Мы берём данные из набора согласно указанной в заголовке структуры. Обращаемся по именам колонок, а не по индексу. Дополнительно, конечно ещё и типы нужно проверить, но это уже вышка какая-то :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 15:16 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
hVosttНикаким It depends-ом тут не пахнет. Табличные данные надо грузить SAX-ом. Да. Тут, похоже, все уже знают, что делать всегда надо только так, как герр hVost считает. Ну, надо, значит надо, бог с тобой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 16:03 |
|
||
|
Есть ли какое-то общепринятое правило чтения таких XML?
|
|||
|---|---|---|---|
|
#18+
fkthathVosttНикаким It depends-ом тут не пахнет. Табличные данные надо грузить SAX-ом. Да. Тут, похоже, все уже знают, что делать всегда надо только так, как герр hVost считает. Ну, надо, значит надо, бог с тобой. Вовсе не обязательно включать вот этот унылый детский сад. Если с чем не согласны, пишите. Я же могу пояснить свои слова, если для вас это совсем не очевидно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2019, 16:32 |
|
||
|
|

start [/forum/topic.php?fid=20&gotonew=1&tid=1398769]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
38ms |
get topic data: |
9ms |
get first new msg: |
4ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 349ms |

| 0 / 0 |
