이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

DataSet.ReadXml 메서드 (TextReader, XmlReadMode)

지정된 System.IO.TextReaderXmlReadMode를 사용하여 XML 스키마와 데이터를 DataSet으로 읽어옵니다.

네임스페이스: System.Data
어셈블리: System.Data(system.data.dll)

public XmlReadMode ReadXml (
	TextReader reader,
	XmlReadMode mode
)
public XmlReadMode ReadXml (
	TextReader reader, 
	XmlReadMode mode
)
public function ReadXml (
	reader : TextReader, 
	mode : XmlReadMode
) : XmlReadMode
적용할 수 없음.

매개 변수

reader

읽어올 TextReader입니다.

mode

XmlReadMode 값 중 하나입니다.

반환 값

데이터를 읽는 데 사용되는 XmlReadMode를 반환합니다.

ReadXml 메서드를 사용하면 XML 문서에서 DataSet으로 데이터만 또는 데이터와 스키마를 모두 읽을 수 있습니다. 반면 ReadXmlSchema 메서드로는 스키마만 읽을 수 있습니다. 데이터와 스키마를 모두 읽으려면 mode 매개 변수가 포함된 ReadXML 오버로드 중 하나를 사용하고 이 매개 변수 값을 ReadSchema로 설정합니다.

WriteXml 메서드와 WriteXmlSchema 메서드에도 각각 동일하게 적용됩니다. DataSet의 XML 데이터만 또는 스키마와 데이터를 모두 쓰려면 WriteXml 메서드를 사용합니다. 스키마만 쓰려면 WriteXmlSchema 메서드를 사용합니다.

인라인 스키마를 지정한 경우 데이터를 로드하기 전에 인라인 스키마를 사용하여 기존 관계형 구조를 확장합니다. 같은 테이블의 같은 열이 서로 다른 데이터 형식으로 정의되어 있는 등 충돌이 있으면 예외가 발생합니다.

인라인 스키마를 지정하지 않은 경우 필요하면 XML 문서의 구조에 따라 유추를 통해 관계형 구조를 확장합니다. 유추를 통해 스키마를 확장하여 모든 데이터를 노출할 수 없는 경우 예외가 발생됩니다.

참고:

"_"과 같은 올바른 XML 문자가 serialize된 XML에서 이스케이프되는 경우 DataSet은 XML 요소를 해당 DataColumn 또는 DataTable과 연결하지 않습니다. DataSet 자체는 XML 요소 이름에서 잘못된 XML 문자만 이스케이프하므로 동일한 것만 사용할 수 있습니다. XML 요소 이름에서 올바른 문자가 이스케이프되면 해당 요소가 처리 중 무시됩니다.

DataSet의 XML 스키마에 targetNamespace가 포함된 경우, 데이터를 읽지 못할 수 있으며, ReadXml을 호출하여 DataSet에 정규화 네임스페이스가 없는 요소가 포함된 XML을 로드하면 예외가 발생할 수 있습니다. 정규화되지 않은 요소를 읽으려면 다음 예제와 같이 XML 스키마에서 elementFormDefault를 "qualified"로 설정합니다.

 <xsd:schema id="MyDataSet" 
    elementFormDefault="qualified" 
    targetNamespace="http://www.tempuri.org/MyDataSet.xsd" 
    xmlns="http://www.tempuri.org/MyDataSet.xsd" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
    xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
 </xsd:schema>
참고:

같은 네임스페이스에서 DataSet의 스키마에 포함된 요소의 이름은 같지만 형식이 다른 경우, XmlReadMode.ReadSchema를 지정하여 ReadXml를 통해 해당 스키마를 DataSet으로 읽으면 예외가 throw됩니다. .NET Framework 버전 1.0을 사용하면 이 예외가 발생하지 않습니다.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0은 Windows Vista, Microsoft Windows XP SP2 및 Windows Server 2003 SP1에서 지원됩니다.

.NET Framework

3.0, 2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0에서 지원

XNA Framework

1.0에서 지원
이 정보가 도움이 되었습니까?
(1500자 남음)

커뮤니티 추가 항목

추가
Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
© 2013 Microsoft. All rights reserved.