이 메서드는 Transform 소스 문서에 대해 인터페이스를 구현 IXPathNavigable 하는 개체, XmlReader 원본 문서를 읽는 개체 또는 문자열 URI의 세 가지 입력 형식을 허용합니다.
비고
클래스는 XslCompiledTransform 기본적으로 공백을 유지합니다. 이는 W3C XSLT 1.0 권장 사항의 섹션 3.4에 따른 것입니다.
IXPathNavigable 인터페이스
인터페이스는 IXPathNavigable 및 XmlNode 클래스에서 구현됩니다. 이러한 클래스는 XML 데이터의 메모리 내 캐시를 나타냅니다.
클래스는 XmlNode W3C DOM(문서 개체 모델)을 기반으로 하며 편집 기능을 포함합니다.
클래스는 XPathDocument XPath 데이터 모델을 기반으로 하는 읽기 전용 데이터 저장소입니다. XPathDocument 는 XSLT 처리에 권장되는 클래스입니다. 성능이 XmlNode 클래스보다 더 빠르게 제공됩니다.
비고
변환은 문서 전체에 적용됩니다. 즉, 문서 루트 노드가 아닌 노드를 전달하는 경우 변환 프로세스가 로드된 문서의 모든 노드에 액세스하는 것을 방지하지는 않습니다. 노드 조각을 변환하려면 노드 조각만 포함하는 개체를 만들고 해당 개체를 메서드에 Transform 전달해야 합니다. 자세한 내용은 방법: 노드 조각 변환을 참조하세요.
다음 예제에서는 이 메서드를 사용하여 XslCompiledTransform.Transform transform.xsl 스타일시트를 사용하여 books.xml 파일을 books.html 파일로 변환합니다. books.xml 및 transform.xsl 파일은 다음 항목에서 찾을 수 있습니다. 방법: 어셈블리를 사용하여 XSLT 변환 수행
// Open books.xml as an XPathDocument.
XPathDocument doc = new XPathDocument("books.xml");
// Create a writer for writing the transformed file.
XmlWriter writer = XmlWriter.Create("books.html");
// Create and load the transform with script execution enabled.
XslCompiledTransform transform = new XslCompiledTransform();
XsltSettings settings = new XsltSettings();
settings.EnableScript = true;
transform.Load("transform.xsl", settings, null);
// Execute the transformation.
transform.Transform(doc, writer);
' Open books.xml as an XPathDocument.
Dim doc As XPathDocument = New XPathDocument("books.xml")
' Create a writer for writing the transformed file.
Dim writer As XmlWriter = XmlWriter.Create("books.html")
' Create and load the transform with script execution enabled.
Dim transform As XslCompiledTransform = New XslCompiledTransform()
Dim settings As XsltSettings = New XsltSettings()
settings.EnableScript = True
transform.Load("transform.xsl", settings, Nothing)
'Execute the transformation.
transform.Transform(doc, writer)
XmlReader 개체
Transform 메서드는 현재 XmlReader 노드부터 모든 자식 노드를 통해 로드됩니다. 이렇게 하면 문서의 일부를 컨텍스트 문서로 사용할 수 있습니다. 메서드가 반환된 후 컨텍스트 문서 끝 다음의 노드에 Transform가 배치됩니다. 문서의 끝에 도달하면 XmlReader가 파일의 끝(EOF)에 위치합니다.
다음 예제에서는 이 메서드를 사용하여 XslCompiledTransform.Transform transform.xsl 스타일시트를 사용하여 books.xml 파일을 books.html 파일로 변환합니다. books.xml 및 transform.xsl 파일은 다음 항목에서 찾을 수 있습니다. 방법: 어셈블리를 사용하여 XSLT 변환 수행
// Create a reader to read books.xml
XmlReader reader = XmlReader.Create("books.xml");
// Create a writer for writing the transformed file.
XmlWriter writer = XmlWriter.Create("books.html");
// Create and load the transform with script execution enabled.
XslCompiledTransform transform = new XslCompiledTransform();
XsltSettings settings = new XsltSettings();
settings.EnableScript = true;
transform.Load("transform.xsl", settings, null);
// Execute the transformation.
transform.Transform(reader, writer);
'Create a reader to read books.xml
Dim reader As XmlReader = XmlReader.Create("books.xml")
' Create a writer for writing the transformed file.
Dim writer As XmlWriter = XmlWriter.Create("books.html")
' Create and load the transform with script execution enabled.
Dim transform As XslCompiledTransform = New XslCompiledTransform()
Dim settings As XsltSettings = New XsltSettings()
settings.EnableScript = True
transform.Load("transform.xsl", settings, Nothing)
' Execute the transformation.
transform.Transform(reader, writer)
문자열 URI
원본 문서 URI를 XSLT 입력으로 지정할 수도 있습니다. XmlResolver URI를 확인하는 데 사용됩니다. 메서드에 XmlResolver를 전달함으로써 사용할 Transform을 지정할 수 있습니다. XmlResolver 지정하지 않으면 메서드는 Transform 자격 증명 없이 기본값 XmlUrlResolver 을 사용합니다.
다음 예제에서는 이 메서드를 사용하여 XslCompiledTransform.Transform transform.xsl 스타일시트를 사용하여 books.xml 파일을 books.html 파일로 변환합니다. books.xml 및 transform.xsl 파일은 다음 항목에서 찾을 수 있습니다. 방법: 어셈블리를 사용하여 XSLT 변환 수행
// Create and load the transform with script execution enabled.
XslCompiledTransform transform = new XslCompiledTransform();
XsltSettings settings = new XsltSettings();
settings.EnableScript = true;
transform.Load("transform.xsl", settings, null);
// Execute the transformation.
transform.Transform("books.xml", "books.html");
' Create and load the transform with script execution enabled.
Dim transform As XslCompiledTransform = New XslCompiledTransform()
Dim settings As XsltSettings = New XsltSettings()
settings.EnableScript = True
transform.Load("transform.xsl", settings, Nothing)
' Execute the transformation.
transform.Transform("books.xml", "books.html")
자세한 내용은 XSLT 처리 중 외부 리소스 해결을 참조하세요.
참고하십시오
.NET