XsltArgumentList.AddParam(String, String, Object) 메서드

정의

매개 변수를 추가하고 네임스페이 XsltArgumentList 스 정규화된 이름과 연결합니다.

public:
 void AddParam(System::String ^ name, System::String ^ namespaceUri, System::Object ^ parameter);
public void AddParam(string name, string namespaceUri, object parameter);
member this.AddParam : string * string * obj -> unit
Public Sub AddParam (name As String, namespaceUri As String, parameter As Object)

매개 변수

name
String

매개 변수와 연결할 이름입니다.

namespaceUri
String

매개 변수와 연결할 네임스페이스 URI입니다. 기본 네임스페이스를 사용하려면 빈 문자열을 지정합니다.

parameter
Object

목록에 추가할 매개 변수 값 또는 개체입니다.

예외

namespaceUri (는) 또는 nullhttp://www.w3.org/1999/XSL/Transform.입니다.

W3C name XML 사양에 따라 유효한 이름이 아닙니다.

namespaceUri 이미 연결된 매개 변수가 있습니다.

예제

다음 예제에서는 메서드를 AddParam 사용하여 현재 날짜 및 시간을 나타내는 매개 변수를 만듭니다.

using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;

public class Sample
{

    public static void Main()
    {

        // Create the XslCompiledTransform and load the stylesheet.
        XslCompiledTransform xslt = new XslCompiledTransform();
        xslt.Load("order.xsl");

        // Create the XsltArgumentList.
        XsltArgumentList xslArg = new XsltArgumentList();

        // Create a parameter which represents the current date and time.
        DateTime d = DateTime.Now;
        xslArg.AddParam("date", "", d.ToString());

        // Transform the file.
        using (XmlWriter w = XmlWriter.Create("output.xml"))
        {
            xslt.Transform("order.xml", xslArg, w);
        }
    }
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl

Public Class Sample

    Public Shared Sub Main()

        ' Create the XslCompiledTransform and load the stylesheet.
        Dim xslt As New XslCompiledTransform()
        xslt.Load("order.xsl")

        ' Create the XsltArgumentList.
        Dim xslArg As New XsltArgumentList()

        ' Create a parameter which represents the current date and time.
        Dim d As DateTime = DateTime.Now
        xslArg.AddParam("date", "", d.ToString())

        Using w As XmlWriter = XmlWriter.Create("output.xml")
            ' Transform the file.
            xslt.Transform("order.xml", xslArg, w)
        End Using

    End Sub
End Class

이 예제에서는 다음 두 데이터 파일을 입력으로 사용합니다.

order.xml

<!--Represents a customer order-->
<order>
  <book ISBN='10-861003-324'>
    <title>The Handmaid's Tale</title>
    <price>19.95</price>
  </book>
  <cd ISBN='2-3631-4'>
    <title>Americana</title>
    <price>16.95</price>
  </cd>
</order>

order.xsl

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:param name="date"/>
  <xsl:template match="/">
    <order>
      <date><xsl:value-of select="$date"/></date>
      <total><xsl:value-of select="sum(//price)"/></total>
    </order>
  </xsl:template>
</xsl:stylesheet>

설명

W3C parameter 형식에 해당해야 합니다. 다음 표에서는 W3C 형식( XPath 또는 XSLT) 및 해당.NET 클래스를 보여 줍니다.

W3C 형식 Equivalent.NET 클래스(형식)
String (XPath) String
Boolean (XPath) Boolean
Number (XPath) Double
Result Tree Fragment (XSLT) XPathNavigator
Node Set (XPath) XPathNodeIterator

XPathNavigator[]
Node* (XPath) XPathNavigator

*단일 노드를 포함하는 노드 집합과 동일합니다.

스타일시트 내에서 호출되는 매개 변수 개체가 위 중 하나가 아닌 경우 다음 규칙에 따라 변환됩니다.

다른 모든 유형은 오류를 발생시킵니다.

적용 대상

추가 정보