Asp XML Parsing

Я новичок в asp, и у меня есть крайний срок в ближайшие несколько дней. Я получаю следующий xml из ответа веб-службы.

print("<?xml version = "1.0" encoding = "UTF-8"?>
<user_data>
<execution_status>0</execution_status>
<row_count>1</row_count>
<txn_id>stuetd678</txn_id>
<person_info>
    <attribute name = "firstname">john</attribute>
    <attribute name = "lastname">doe</attribute>
    <attribute name = "emailaddress">[email protected]</attribute>
</person_info>
</user_data>");

Как я могу разобрать этот xml на атрибуты asp?

Любая помощь приветствуется

Спасибо Дэмиен

При дополнительном анализе, некоторые мыльные материалы также возвращаются, поскольку ответ aboce поступает от вызова веб-службы. Могу ли я использовать приведенный ниже код lukes?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
5
0
21 462
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Вам нужно прочитать о парсере MSXML. Вот ссылка на хороший пример моноблока http://oreilly.com/pub/h/466

Немного чтения по XPath также поможет. Вы можете получить всю необходимую информацию в MSDN.

Похищение кода из Люк отличный ответ для агрегации:

Dim oXML, oNode, sKey, sValue

Set oXML = Server.CreateObject("MSXML2.DomDocument.6.0") 'creating the parser object
oXML.LoadXML(sXML) 'loading the XML from the string

For Each oNode In oXML.SelectNodes("/user_data/person_info/attribute")
  sKey = oNode.GetAttribute("name")
  sValue = oNode.Text
  Select Case sKey
    Case "execution_status"
    ... 'do something with the tag value
    Case else
    ... 'unknown tag
  End Select
Next

Set oXML = Nothing

Я не понимаю .. ты никогда ничего не делаешь со sValue ??

JoJo 05.09.2012 19:28

Вы можете попробовать загрузить xml в объект xmldocument, а затем проанализировать его, используя его методы.

Под ASP, я полагаю, вы имеете в виду классический ASP? Пытаться:

Dim oXML, oNode, sKey, sValue

Set oXML = Server.CreateObject("MSXML2.DomDocument.4.0")
oXML.LoadXML(sXML)

For Each oNode In oXML.SelectNodes("/user_data/person_info/attribute")
  sKey = oNode.GetAttribute("name")
  sValue = oNode.Text
  ' Do something with these values here
Next

Set oXML = Nothing

В приведенном выше коде предполагается, что ваш XML находится в переменной sXML. Если вы используете это через запрос ServerXMLHttp, вы должны иметь возможность использовать свойство ResponseXML вашего объекта вместо oXML, описанного выше, и вообще пропустить шаг LoadXML.

Другие вопросы по теме