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

 

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

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

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

static void ShcwXriiliniEUtring strPathToXml)
I
SHDocVw.InternetExplorer ie = new SHDocVw. Inte met Explore rClass();
object objEmpty = Type.Missing;
ie.Navigate(strPathToXml, ref objEmpty, ref objEmpty,
ref objEmpty, ref objEmpty); ie. Visible = true;
Примечание Метод Navigate класса InternetExplorer обладает множеством необязательных параметров. Язык С* не поддерживает необязательные параметры при обращениях к составляющим модели СОМ. В качестве опускаемых параметров следует передать TypeMissing.
У объекта DataSet есть перегруженный метод ReadXml, позволяющий загружать в
DataSet данные. Можно сказать, это - инвертированный вариант метода WrueXml. Он позволяет считывать данные из файла или объекта, реализующий интерфейсы Stream. TextReaderwm XmlReader. Кроме того, метод ReadXml принимает значения из перечисления Xiidlieadfi км ie управляющие порядком считывания XML-данных.
Методы WriteXmlSchema, ReadXmlScheim и InferXmlSchema
Объект DataSet предоставляет методы ReadXmlSchema и ШШйШ6&Шопозволя-ющие считывать и записывать только информацию схемы этого объекта. Оба метода могут работать с файлами и объектами, реализующими интерфейсы Stream, TextReader и XmlReader.
ГЛАВА Работа с XML-данными
459
Метод UoadXmlN. Інош способен загружать информацию схемы из документов с XML-схемами в стандарте XML Schema Definition (XSD) или XML Data Reduced (XDR), а также считывать вложенные схемы из XML-документов.
Объект DataSet также обладает методом InferXmlScbemaOn аналогичен методу ReadXmlSchema. за исключением того, что прішіїічаоі второй параметр — массив строк с именами пространств имен, элементы которых в XML-документе следует игнорировать,
Формирование схем
В предыдущих главахя добавлял метаданные и информацию схемы непосредстеен-но в код, чтобы обеспечить более высокую производительность, чем при программном этих сведений в период выполнения. То :-?х верно и для формирования XML-схем, и первый пример здесь — метод Rv<it1\iti!.
Предположим, вы с помощью метода ReadXml загружаете данные в объект DtttsSe, и ни X.MI.-документ, ни і >«!цч>! не содержат їж форм, и і.нн схемы. Добавить записи в объект DataSet, не включающий информацию схемы, нельзя. Прежде чем добавить содержимое XML-документа в объект DataSet, метод ReadXml должен полностью п|1(>ск.1Шфона"п, этот документ. Чем больше документ, тем сильнее отрицательное влияние на производительность в результате схе-
мы на основе документа.
В результате такого подхода возможна еще одна проблема. Вполне вы не получите нужную вам схему. предположит, что все типы данных —
строковые, и не создаст каких-либо ограничений. Почему? Допустим, ваш XML-документ содержит список сон:ахтпыхлиц и адресов в следующем формате (XML-теги опущены):
<MailingLabel>
<First_Name>Randal</Fi rst_Naaie>
<tast_Naiee>Stephens</Last_NaitiE>
a<jdres5>123 Main St.</Address>
<City>Sometown</City>
<Region>MA</Region>
<PostalCode>01234</PostalCode> </Mailingl_abel>
что этот документ — небольшая выборка на основе реальных данных вашей БД. В других записях БД у контактного лица может быть два адреса или адрес за пределами США с другим форматом почтового индекса. 11' >мі як: если вы указываете ЛІ )< ).NLT сформировать схему на основе не
содержащего информации схемы, предпримет все, чтобы создать соот-
ветствующую схему. Следовательно, информацию схемы следует предоставлять всегда, когда это возможно. Ее добазлязот непосредственно код или } л;;зы;!а:о'.; XML-документ с нужной информацией схемы. Это позволит повысить производительность приложения и избежать ненужных проблем.
460
Часть Автономная работа с данными: объект DataSet модели а"jO.NET
Свойства ADO.NET, влияющие на схему XML-документа
ФорматХМ1 докумеїira задается еще одним способом. Как гласит пословица, дьявол кроется в деталях. Изучите XML-до кум ci гты на ряс. І^о и 12- ! Они содержат одни и те же сведения, но их схемы различаются.
Если вы попытаетесь загрузить данные в объект DataSet, уже включающий информацию схемы, ADO.NET проигнорирует ца^г.ж. не соответствующие схеме DataSet. Таким образом, важно сравнивать схему объекта DataSet и схему загружаемых данных.
*UrderJ.D>lu2eB*:/0rderlD> <CusionicrID >GROSBi/Cus^. >
- vi--/-г С 996-D7-30T00:0a:a0.a0DDDIID-D7:OO-/Or-J-riJ І1-' ¦
¦ * »
< С IjatttmpTC »С Я DIR.- А" ¦.л^пкгЮ >
<Orcer^ci-*itf r i2 ivrnniuaioo.aimwM ob:qo-
< (aSWMi itflJ.Mi_L;*tdil r -
'1ПІЧг 'Сі * 1026 В• .-Cidwao> « P re if uft ! D * 2 9 * rt>roducUD > '- Q илп»Д T > I 0 * .'tj u4 nur« » ¦cLflitPi. Щ >ft*Aln (Ягіи f
¦c; _vde _ *'jtu'j_bet*i«>
nits ^z:r,~ i: псе
«A*W« i_ .fJWU_Ur*fc:*> - ¦r)ld*r_J;.i«0_Ijftl^li>
»Order 70 H 07M v/Or*rlU- >
« L,nir-rc»>3l^'/'-',itf;»ice^
cvr=«10» |Q78fi-:.'(-rr*riD>
* р гйЛл*1Г»>7** /с< rjmt: r.1 > ¦* ^ * I Pf AJ utf#tr •
<Unitfti» >T.7S<A'n.#-rci> №№ИН Г_. 002 u ,рйї*,І ¦>
Рис. 12-3. XML-документ со списком заказов клиента
<Ткт1 ом ton—"1 чГ staMifene-'y»' ?>
- 4t*y(*»L'afaw ^ihii-5'd!rtO-"ini6ft" чі"ч» СЭДыцде&ь- GMsi1 k^rh ¦ ¦. і "лі-сЧвэьит-эотоо: O0:00.u0aauao-o7:oo >
Предыдущая << 1 .. 193 194 195 196 197 198 < 199 > 200 201 202 203 204 205 .. 260 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100