Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как прочитать атрибуты из XML файла / 8 сообщений из 8, страница 1 из 1
30.03.2004, 22:28
    #32462939
deepInfinity
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
Помогите решить очень важную проблему
Как прочитать атрибуты из XML файла, типа

<item name="a">
<root>
<action url="a.aspx">
</item>
<item name="b">
<action url="b.aspx">
</item>
...
</root>


и присвоить некоторым переменым их значения.
Что вроде,
name = присвоить значение a
name = присвоить значение b
....
и чтобы в браузере при клике на a, b, ... осуществлялся переход по ссылке, указанной в action url, т.е. эта секция показывает куда перейти при нажатии на узел

Вообщем, требуется пройти по дереву, сделать необходимую выборку и присвоить значения узлов конкретным переменным, а затем вывести все это на экран.

Чтение производится из заданного XML файла, реализация на VB.NET (желательно)

Спасибо.
...
Рейтинг: 0 / 0
31.03.2004, 00:18
    #32462984
greenapple
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
Код: plaintext
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.
Dim xmlReader As New XmlTextReader(Server.MapPath( "XMLFile1.xml" ))
            xmlReader.WhitespaceHandling = WhitespaceHandling.None

            While xmlReader.Read

                If xmlReader.NodeType = XmlNodeType.Element AndAlso xmlReader.Name =  "item"  Then

                    xmlReader.MoveToAttribute( "name" )

                    Dim hl As New HyperLink

                    If xmlReader.Value.Length <>  0  Then
                        hl.Text = xmlReader.Value
                    Else
                        hl.Text =  "["  &  "name is empty"  &  "]" 
                    End If

                    xmlReader.Read()

                    If xmlReader.NodeType = XmlNodeType.Element AndAlso xmlReader.Name =  "action"  Then
                        xmlReader.MoveToAttribute( "url" )

                        If xmlReader.Value.Length <>  0  Then
                            hl.NavigateUrl =  "/"  & xmlReader.Value
                        Else
                            hl.NavigateUrl =  "#" 
                        End If

                    End If

                    panel1.Controls.Add(hl)
                    panel1.Controls.Add(New LiteralControl( "<br>" ))

                End If
            End While

            xmlReader.Close()
...
Рейтинг: 0 / 0
31.03.2004, 02:19
    #32463004
deepInfinity
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
Спасибо greenapple за ответ, но таки осталась не решенной одна проблема:(

присвоить некоторым переменым их значения.
Что вроде,
name = присвоить значение a
name = присвоить значение b
url = a.aspx
url = b.aspx
и т.д.
а не просто отбразить некоторые узлы
...
Рейтинг: 0 / 0
31.03.2004, 13:50
    #32463839
greenapple
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
а количество узлов и соответствующих переменных известно?
...
Рейтинг: 0 / 0
31.03.2004, 16:52
    #32464405
deepInfinity
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
Иными словами говоря, создается серверный контрол типа TreeView, который будет отображать информацию из XML файла.


А вопрос заключается в чтение этого файла и присвоения отдельным ноудам (узлам) сформированным в контроле (image, name, url, target и т.д.) значений полученных из этого XML-файла, которые затем и бут отображаться в ноудах.
...
Рейтинг: 0 / 0
31.03.2004, 17:45
    #32464529
greenapple
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
ну так, ноды в контроле наверное формируются исходя из кол-ва элементов в XML, в моем примере вместо HyperLink можно создавать нод и добавлять его в дерево.
...
Рейтинг: 0 / 0
04.04.2004, 03:19
    #32468148
deepInfinity
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
Если изменить приведенный в начале пример на следующий, то уже ничего не работает как надо:

<?xml version="1.0" encoding="utf-8"?>
<root>
<item name="ASP.NET">
<item name="Server Controls">
<item name="button">
<action url="button.aspx" />
</item>
<item name="checkbox">
<action url="checkbox.aspx" />
</item>
</item>
<item name="HTML Controls">
<item name="htmlImage">
<action url="htmlImage.aspx" />
</item>
<item name="htmlTable">
<action url="htmlTable.aspx" />
</item>
</item>
</item>
<item name="ADO.NET">
<item name="dataset">
<action url="dataset.aspx" />
</item>
</item>
<item name="visualbasic">
<action url="visualbasic.aspx" />
</item>
<item name="C#" />
</root>

Значения атрибутов получаются неверными
Сколько маялся - не выходит
Выходные значения должны быть следующими по смыслу

node1
name = ASP.NET
Url = ""

name = Server Controls
url = ""

name=button
url=button.aspx

name=checkbox
url=checkbox.aspx

node2
...
Или я что-то не так понимаю в создании дерева TreeView
...
Рейтинг: 0 / 0
24.04.2004, 03:58
    #32495195
Ustazz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать атрибуты из XML файла
Самым логичным способом преобразования XML-дерева в HTML-дерево является XSL-трансформация. Например, при помощи <asp:Xml>
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как прочитать атрибуты из XML файла / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]