XML-документы и данныеXML Documents and Data

Платформа .NET Framework имеет всеобъемлющий и интегрированный набор классов, с помощью которых можно легко создавать приложения, использующие XML.The .NET Framework provides a comprehensive and integrated set of classes that enable you to build XML-aware apps easily. Классы из следующих пространств имен поддерживают синтаксический анализ и запись XML-кода, изменение XML-данных в памяти, проверку данных и преобразование XSLT.The classes in the following namespaces support parsing and writing XML, editing XML data in memory, data validation, and XSLT transformation.

Чтобы получить полный список, выполните поиск System.Xml в браузере API .NET.For a full list, search for "System.Xml" on the .NET API browser.

Классы из этих пространств имен поддерживают рекомендации W3C.The classes in these namespaces support World Wide Web Consortium (W3C) recommendations. Например:For example:

Классы XML в платформе .NET Framework предоставляют следующие преимущества.The XML classes in the .NET Framework provide these benefits:

  • ПроизводительностьProductivity. LINQ to XML (C#) и LINQ to XML (Visual Basic) упрощает программирование с использованием XML и обеспечивает работу с запросами, похожую на работу в SQL.LINQ to XML (C#) and LINQ to XML (Visual Basic) makes it easier to program with XML and provides a query experience that is similar to SQL.

  • РасширяемостьExtensibility. XML-классы в .NET Framework являются расширяемыми, что было достигнуто за счет использования абстрактных базовых классов и виртуальных методов.The XML classes in the .NET Framework are extensible through the use of abstract base classes and virtual methods. Например, можно создать класс, производный от класса XmlUrlResolver, который будет сохранять поток кэширования на локальном диске.For example, you can create a derived class of the XmlUrlResolver class that stores the cache stream to the local disk.

  • Модульная архитектураPluggable architecture. Платформа .NET Framework обеспечивает архитектуру, в которой компоненты могут использовать друг друга, а данные можно передавать в потоках между компонентами.The .NET Framework provides an architecture in which components can utilize one another, and data can be streamed between components. Например, хранилище данных, такое как объект XPathDocument или XmlDocument, можно преобразовать с помощью класса XslCompiledTransform, а выходные данные затем могут быть переданы в виде потока в другое хранилище или возвращены в виде потока из веб-службы XML.For example, a data store, such as an XPathDocument or XmlDocument object, can be transformed with the XslCompiledTransform class, and the output can then be streamed either into another store or returned as a stream from a web service.

  • Производительность.Performance. С целью повышения быстродействия приложений некоторые XML-классы в .NET Framework поддерживают модель на основе потоковой передачи со следующими характеристиками.For better app performance, some of the XML classes in the .NET Framework support a streaming-based model with the following characteristics:

    • Минимальное кэширование для анализа по запросу в однопроходном режиме (XmlReader).Minimal caching for forward-only, pull-model parsing (XmlReader).

    • Проверка в однопроходном режиме (XmlReader).Forward-only validation (XmlReader).

    • Навигация, аналогичная курсорам, которая сводит создание узлов к минимуму (до одного виртуального узла) и обеспечивает произвольный доступ к документу (XPathNavigator).Cursor style navigation that minimizes node creation to a single virtual node while providing random access to the document (XPathNavigator).

    В случае если требуется обработка XSLT, для повышения производительности можно использовать класс XPathDocument, который является оптимизированным хранилищем «только для чтения» для запросов XPath, обеспечивающих эффективное взаимодействие с классом XslCompiledTransform.For better performance whenever XSLT processing is required, you can use the XPathDocument class, which is an optimized, read-only store for XPath queries designed to work efficiently with the XslCompiledTransform class.

  • Интеграция с ADO.NETIntegration with ADO.NET. Классы XML и ADO.NET тесно интегрированы для сведения воедино реляционных данных и XML.The XML classes and ADO.NET are tightly integrated to bring together relational data and XML. Класс DataSet представляет собой кэш «в памяти» для данных, полученных из базы данных.The DataSet class is an in-memory cache of data retrieved from a database. Класс DataSet позволяет считывать и записывать код XML с помощью классов XmlReader и XmlWriter, сохранять внутреннюю реляционную структуру в виде схем XML (XSD) и логически выводить структуру схем XML-документов.The DataSet class has the ability to read and write XML by using the XmlReader and XmlWriter classes, to persist its internal relational schema structure as XML schemas (XSD), and to infer the schema structure of an XML document.

В этом разделеIn This Section

Варианты обработки XML-данных Обсуждаются параметры обработки XML-данных.XML Processing Options Discusses options for processing XML data.

Обработка XML-данных в памяти Содержит обсуждение трех моделей обработки XML-данных в памяти: LINQ to XML (C#) и LINQ to XML (Visual Basic), класс XmlDocument (основанный на модели W3C DOM) и класс XPathDocument (основанный на модели данных XPath).Processing XML Data In-Memory Discusses the three models for processing XML data in-memory: LINQ to XML (C#) and LINQ to XML (Visual Basic), the XmlDocument class (based on the W3C Document Object Model), and the XPathDocument class (based on the XPath data model).

Преобразования XSLTXSLT Transformations
Описывается, как использовать обработчик XSLT.Describes how to use the XSLT processor.

Модель объектов схемы XML (SOM)XML Schema Object Model (SOM)
Описываются классы, используемые для построения схем XML (XSD-файлов) и работы с ними, используя класс XmlSchema для загрузки и изменения схемы.Describes the classes used for building and manipulating XML Schemas (XSD) by providing an XmlSchema class to load and edit a schema.

Интеграция XML с реляционными данными и ADO.NETXML Integration with Relational Data and ADO.NET
Описывается, как платформа .NET Framework реализует синхронный доступ в режиме реального времени к данным в реляционном и иерархическом представлении с помощью объектов DataSet и XmlDataDocument.Describes how the .NET Framework enables real-time, synchronous access to both the relational and hierarchical representations of data through the DataSet object and the XmlDataDocument object.

Управление пространствами имен в XML-документеManaging Namespaces in an XML Document
Описывает использование класса XmlNamespaceManager для хранения и ведения информации о пространствах имен.Describes how the XmlNamespaceManager class is used to store and maintain namespace information.

Поддержка типов в классах System.XmlType Support in the System.Xml Classes
Описывает сопоставление типов данных XML с типами CLR, преобразование типов данных XML и другие возможности по работе с типами, которые есть в классах System.Xml.Describes how XML data types map to CLR types, how to convert XML data types, and other type support features in the System.Xml classes.

ADO.NETADO.NET
Приводятся сведения о доступе к данным с помощью ADO.NET.Provides information on how to access data using ADO.NET.

БезопасностьSecurity
Приводятся общие сведения о системе безопасности в платформе .NET Framework.Provides an overview of the .NET Framework security system.