ГЛАВА 9 XML И .NET

ГЛАВА 9

XML И .NET

Вероятно, большинство читателей уже знакомы в той или иной мере с расширяемым языком разметки (extensible Markup Language — XML). По сути, пользователи встречаются с ним уже при установке среды Visual Studio .NET или CLR, даже если и не подозревают об этом. В свое время XML считался панацеей от всех бед, способной решить все проблемы обмена данными, независимо от используемой платформы или аппаратного обеспечения. На начальном этапе развития XML эти необоснованные ожидания породили массу избыточных и совершенно бесполезных затрат при создании приложений с применением XML. Разработчики стали повсюду использовать дескрипторы XML без учета их реальной необходимости для конкретных бизнес-ситуаций или технических причин. Мощь XML заключается в эффективном использовании метаданных и структурированных элементов для хранения данных. XML не является языком программирования, поскольку не содержит никаких директив для выполнения каких-либо действий, а потому обладает полной независимостью от используемой платформы.

Разработчики, имеющие большой опыт работы с HTML, смогут легко понять преимущества надежного и эффективного использования XML. Пространство имен представлено элементом с префиксом xmlns:, оно содержит уникальное имя для контейнера, который предлагает функции и/или данные аналогично имени класса в языке Visual Basic. В среде Visual Basic .NET этот подход упрощается за счет использования расширенного набора классов для синтаксического анализа и манипулирования данными в формате XML. Рассмотрим обычный файл конфигурации web.config. Он имеет формат XML, а не "унаследованный" формат файла конфигурации.ini, хотя доступ к его данным можно осуществить с помощью аналогичных простых методов. Основное отличие заключается в том, что файл web.config обладает большими возможностями для расширения. Доказательством этого отличия является то, что управление файлом web.config осуществляется так же, как и любым другим документом в формате XML, хотя результаты подобных манипуляций могут быть совершенно иными.

Основным преимуществом формата XML (и его аналогов, соответствующих протоколу Simple Object Access Protocol – SOAP) является его нейтральность. Благодаря этому всегда можно создать приложение с расширением логики путем расширения данных, а не создания уникального кода для доступа к централизованно хранящимся данным.

В настоящей главе основное внимание сосредоточено на использовании XML в целях идентификации данных для приложений и пользователей. В ней описываются способы применения XML на платформе.NET в практических ситуациях. Более глубокое описание способов взаимодействия с базами данных и наборами данных DataSet с помощью классов модели ADO.NET приведено в главе 10, "ADO.NET и XML".

В настоящее время описанию XML посвящено много книг и ресурсов. Поэтому вместо подробного рассмотрения этой темы основное внимание в этой главе уделяется вопросам интеграции XML с платформой .NET. Читатели, которые хорошо знакомы с основами XML, могут пропустить обзорные разделы вплоть до раздела с описанием классов XML для платформы .NET.