Опубликован: 05.08.2010 | Доступ: свободный | Студентов: 2850 / 381 | Оценка: 4.12 / 4.02 | Длительность: 10:07:00
Лекция 12:

Отображение содержимого XML-документов

Отображение с помощью элемента управления GridView

Далее, мы покажем, каким образом можно визуализировать данные, записанные в XML-файле с помощью элемента управления GridView.

Вначале нам нужно создать XML-файл - , в котором будут храниться сведения о мифических животных:

<?xml version="1.0" encoding="windows-1251" standalone="yes" ?>
<MythicalAmimals>
  <Animal Title="Сфинкс"
      Place="Египет, Месопотамия, Греция"
      Description="Египетскими сфинксами называют мифических существ, 
      которые в скульптурной традиции культуры представляют собой стражей. 
      Арабское название Великого Сфинкса, Абу аль-Холь, переводится как "отец страха".">
    <comments>
      <userComment rating="4"
          comment="В отличие от сфинкса в Египте, Месопотамии и Греции, 
          где это существо "прожило" ровно столько же, сколько и сама цивилизация,
          азиатский сфинкс жив до сих пор. Первые изображения этого мифического существа
          появились в Азии как подражание эллинистическому искусству, но сфинксы Мадхуры,
          Каусамби и Санчи, датируемые третьим веком до нашей эры, 
          абсолютно не похожи на своих греческих сородичей. " />
      <userComment rating="2"
          comment="В шестнадцатом веке появилось такое понятие как "французский сфинкс". 
         Это существо представляло собой льва с головой и грудью прекрасной девушки, 
         чьи уши нередко были украшены серьгами. Ученые считают это гротеском древнего образа,
         утверждая, что идентичными фигурами был украшен дворец Нерона." />
    </comments>
  </Animal>
  <Animal Title="Минотавр"
       Place="Эллада"
       Description="В греческой мифологии Минотавр представлял собой наполовину человека,
        наполовину быка. Он проживал в центре Лабиринта - запутанной конструкции,
       построенной на Крите для царя Миноса и спроектированной архитектором Дедалом, 
       чтобы удерживать чудовище вдали от людей. Минотавр переводится с греческого как "миносский бык", 
       а на Крите его называют Астерион и связывают с царем Миносом кровными узами.">
    <comments>
      <userComment rating="3"
          comment="Когда пришла очередь третьего жертвоприношения, стать одним из семи юношей, 
          вызвался Тезей. Он пообещал отцу, что в случае удачи, повесит белый флаг на своем корабле на обратном пути. 
          Дочь Миноса, Ариадна, влюбилась в Тезея, и дала ему клубок ниток, чтобы он не смог заблудиться в лабиринте. 
         Тезей убил Минотавра и вывел афинян из пещеры." />
      <userComment rating="4"
          comment=" На обратном пути Тезей забыл сменить черные паруса на белые и причалил с ними к родным берегам. 
          Эгей каждый день выглядывал на скале своего сына, и, увидев, черные паруса, 
          от горя бросился в море, которое с тех пор называется Эгейским. 
          Минос же, будучи в ярости, оттого что Тезею удалось сбежать, заключил Дедала и Икара 
          в высокую башню, откуда они смогли сбежать при помощи самодельных крыльев. " />
    </comments>
  </Animal>
  <Animal Title="Химера"
      Place="Холмистые равнины Ликии"
      Description="Химера (греч. "коза) - мифическое создание, фигурирующее в мифе про Беллерофонта. 
      Согласно этому мифу чудовище Химера наводило страх на всю округу. 
      Представляло оно собой существо с исполинским телом козы, львиной головой, крыльями и змеиным хвостом. 
       Из медной пасти Химеры бил огонь. Своих жертв чудовище затаптывало, опаливало огнем или убивало огромным хвостом." >
    <comments>
      <userComment rating="3"
          comment="В современном русском языке химерами называют несбыточные мечтания,
          существа с причудливыми очертаниями (чаще всего, совершенно отличными от прообраза 
          в древнегреческом мифе)." />
    </comments>
  </Animal>
  <Animal Title="Кентавры"
      Place="Греция"
      Description="В греческой мифологии кентавры представляли собой расу существ, 
      внешний вид которых представлял собой получеловека-полуконя. 
      В ранней аттической росписи они изображены в виде человеческого торса, 
      прикрепленного к телу коня." >
    <comments>
      <userComment rating="4"
          comment="Греческое слово кентавр может иметь такую этимологию, как кен-таурос, 
          то есть "раб быка". Некоторые считают, что своего кентавра герки взяли из Месопотамии, 
          где он символизировал бога Ваала, олицетворявшего дождь и плодородие, 
          поражающего рогами демона Мота, олицетворяющего летнюю засуху (в греческом варианте Мот стал называться Лупусом). 
          И только позднее в Греции образ кентавров перенесли на чужеземцев с севера, 
          скачущих на лошадях. " />
    </comments>
  </Animal>
  <Animal Title="Горгульи"
      Place="Греция"
      Description="Горгулий можно с уверенностью назвать ближайшими родственниками химер. 
      Однако используется это понятие, в основном, не в мифологическом контексте, 
      а в архитектурном, где горгулью нередко путают с собственно химерой. 
      Как такового понятий горгулья в мифологическом словаре не существует, 
      оно появилось только в районе двенадцатого века с определенным архитектурным стилем 
      и происходило от латинских корней или французского gargouille, 
      что означало "стекать, глотать", так как фигурки были прикреплены к стокам на крыше зданий." >
  </Animal>
</MythicalAmimals>
Листинг .

Файл нужно сохранить в каталоге /App_Data.

Отображение XML-данных в элементе управления GridView

Чтобы сделать данные доступными для элементов управления на web-странице ASP.NET, используется элемент управления источника данных [2].

Настройка доступа к данным XML-файла

Откроем файл и переключимся в режим конструктора.

Из группы Данные в панели элементов перетащим на страницу элемент управления XmlDataSource.

В меню ЗадачиXmlDataSource выберем команду Настроить источник данных.

Откроется диалоговое окно Настройка источника данных <DataSourceName>.

В поле Файл данных вводим ~/App_Data/MythicalAnimals.xml.

Нажмем кнопку .

Элемент управления XmlDataSource делает данные в XML-файле доступными для элементов управления, находящихся на странице. Данные доступны в двух форматах: иерархическом и табличном. Элементы управления, привязанные к элементу управления XmlDataSource, могут получать данные в том формате, который им подходит.

Теперь можно отображать XML-данные в списочном элементе управления. Отобразим часть XML-данных в элементе управления GridView.

Базовое отображение XML-данных с помощью элемента управления GridView

Из группы Данные в панели элементов перетащим на страницу элемент GridView.

В списке Выбор источника данных в меню Задачи GridView выберем XmlDataSource1.

Нажмем клавиши CTRL+F5 для запуска страницы.

Связывание XML-файла с элементом управления GridView

увеличить изображение
Рис. 15.3. Связывание XML-файла с элементом управления GridView