XsltArgumentList.AddParam(String, String, Object) Metode

Definisi

Menambahkan parameter ke XsltArgumentList dan mengaitkannya dengan nama namespace yang memenuhi syarat.

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)

Parameter

name
String

Nama yang akan dikaitkan dengan parameter .

namespaceUri
String

URI namespace untuk dikaitkan dengan parameter . Untuk menggunakan namespace default, tentukan string kosong.

parameter
Object

Nilai parameter atau objek untuk ditambahkan ke daftar.

Pengecualian

namespaceUri adalah atau nullhttp://www.w3.org/1999/XSL/Transform.

name bukan nama yang valid sesuai dengan spesifikasi XML W3C.

namespaceUri sudah memiliki parameter yang terkait dengannya.

Contoh

Contoh berikut menggunakan AddParam metode untuk membuat parameter yang mewakili tanggal dan waktu saat ini.

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

Contohnya menggunakan dua file data berikut sebagai input.

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>

Keterangan

parameter harus sesuai dengan jenis W3C. Tabel berikut menunjukkan jenis W3C, baik XPath atau XSLT, dan kelas.NET yang sesuai.

Jenis W3C Kelas yang setara.NET (Jenis)
String (XPath) String
Boolean (XPath) Boolean
Number (XPath) Double
Result Tree Fragment (XSLT) XPathNavigator
Node Set (XPath) XPathNodeIterator

XPathNavigator[]
Node* (XPath) XPathNavigator

*Ini setara dengan set simpul yang berisi satu simpul.

Jika objek parameter yang dipanggil dari dalam lembar gaya bukan salah satu dari yang di atas, objek parameter dikonversi sesuai dengan aturan berikut:

Semua jenis lainnya menghasilkan kesalahan.

Berlaku untuk

Lihat juga