Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Вебмастеру -> Сеппа Д. -> "Microsoft ADO.NET" -> 197

Microsoft ADO.NET - Сеппа Д.

Сеппа Д. Microsoft ADO.NET — М.: Русская Редакция, 2003. — 640 c.
ISBN 5-7502-0223-2
Скачать (прямая ссылка): mcrsftado2003.pdf
Предыдущая << 1 .. 191 192 193 194 195 196 < 197 > 198 199 200 201 202 203 .. 260 >> Следующая

Ответ. Прямого эквивалента метода в модели ADO.NET нет. Однако дос-
тичь аналогичной функциональности можно, заполнив новый объект DataSet и
объединив его содержимое с содержимым существующего объекта DataSet при
помощи метода Merge. Подробнее об этом — в этой главе.
ГЛАВА
12
Работа с XML-данными
\S этой главе речь пойдет об имеющихся в ADO.Vrr функциях для работы с данными в формате в частности о функциях для чтения и записи таких данных. Но шх.о прожую вас: не надейтесь основательно изучить XML прочитав эту главу. Чтобы стать профи, вам придется прочитать не одну книгу, посвященную д'л>~ му языку.
Однако хотя настоящая глава не претендует на то, чтоб называться справочником по ЧЧ!. и типа XSLT и XPath, она демонстрирует их мощь. Думаю, вы обладаете базовыми навыками работы с XML, XSLT и XParh, хотя это и совсем не обязательно. Даже если вы не можете выговорить ийЗЕште языка — XML, прочитав эту гду.-r/ вы проникнетесь симпатией к нему и, возможно, захотите изучить его более полно.
Рассказывая о работе с XML-данными при помощи ADO.NET, я также опишу некоторые XML-функции Microsoft SQL Server 2000. Как я уже говорил, этому посвящены целые книги, например «Программирование для Microsoft SQL Server 2000 с использованием XML» Трэма Малкольма («Русская Редакция-, 2002). Я же предполагаю, что вы имеете представление об XML-функциях SQL Server 2000 и хотите обращаться к ним с помощью ADO.NET. Однако даже если вы ничего не знаете о них, воспользуйтесь приведенными фрагментами кода и оцените предоставляемые ими возможности.
Мост через пропасть между XML и доступом к данным
В настоящее время XML — одна из активно используемых разработчиками
технологий. Недавно я побывал в крупном книжном магазине и поразился количеству изданий, посвященных XML. Это была если не первая, то вторая по подборке книг тематика в отделе компьютерной литературы,
ГЛАВА ' 2 Работа с XML-данными
455
В XML-документе можно хранить данные о группе клиентов и размещенных ими заказах. XML-документ чем-то напоминает объекты DataSet ADO.NET и Recordset ADO. Каждый из них позволяет хранить множество порций данных в четко определенной структуре.
Во времена Microsoft Visual Basic и Microsoft Active Server Pages (ASP) разработчики обычно использовали либо XML, либо технологию доступа к данными и очень редко — и то, и другое. Почему? Технологии плохо взаимодействовали между собой. Перемещатьданные из XML-документа в объект Re cor aset модели ADO и обратно — непростая ЪЛЛ:У::\
В ADO реализованы функции, позволявшие сохранять содержимое Recordset :в XML-формате и загружать эти XML-данные обратно в объект Recordset. Тем не менее, изучив содержимое XML-файла, создаваемого ADO, вы увидите, что он включает ряд тегов схемы. Управлять схемой XML-документа, создаваемого ADO, нельзя, Кроме того, ADO не способен считывать универсальные XML-документы. Загрузить данные в объект Recordset с помощью его метода Open можно, только если XML-документ сгенерирован с использованием схемы мпки >eiimeiiu-<l i. ожидае-мойADO.
Одна из главных задач команды разработчиков ADO.NET — навести мост через пропасть между XML и доступом к данным, чтобы облегчить интеграцию этих двух технологий. Загружать данные из XML-документа в объект DataSet модели ADO.NET и обратно очень просто. При работе с SQL Server 2000 можно получать данные из БД в XML-формате и помещать их в XML-документ или объект DataSet ADO.NET. Кроме того, предусмотрены средства для синхронизации объекта DataSet и XML-документа, чтобы изменения одного отражались также и в другом.
Теперь я расскажу об этом более подробно.
Запись и считывание XML-данных
Прежде всего поговорим о ра...шчпы\ способах чтения и записи XML-данных с
помощью объекта DataSet,
Методы объекта DataSet для работы с XML-данными
Объект DataSet обладает рядом методов, позволяющих просматривать его содержимое в XML-представлении, а также загружать XML-данные в DataSet.
Метод GetXmi
Простейший из XML-методов, GetXml, позволяет извлекать содержимое объекта DataSet в строку. Этот метод даже слишком прост. Он не перегружен и не принимает параметров.
На рис. I 2-: показано содержимое объекта DataSet в окне консоли.
Вот фрагмент кода, генерирующий и выводящий данный объект DataSet:
Visual Basic NET
Dim ds As New DataSeU )
FillMyDataSet(ds)
Console.WriteLine(ds.GetXml)
456
Часть III Автономная работа с данными: объект DataSet модели ADO. МЕТ
Public Sub FillMyOataSsUByVal ds As DataSet) Dim strConn, strSQL As String
strConn = "Provider=SQL0LEDB; Data Source=(local)\NetSDK;" &_ "Initial Catalog=Northwind;Trusted_Connection=Yes;"
strSQL = "SELECT OrdarlD, CustomerlD, OrderDate FROM Orders " & "WHERE CustomerlD = 'GROSR'"
Dim daOrders, daDetails As OleDbDataAdapter
daOrders = New 01eDb0ataAdapter(strSQL, strConn)
strSQL = "SELECT OrderlD, ProductID, Quantity, UnitPrice " & _ "FROM [Order Details] WHERE OrderlD IN (SELECT " & _ "OrderlD FROM Orders WHERE CustomerlD = 'GROSR')"
daDetails = New 01eDbDataAdapter(strSQL, strConn)
Предыдущая << 1 .. 191 192 193 194 195 196 < 197 > 198 199 200 201 202 203 .. 260 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100