XsltArgumentList.AddParam(String, String, Object) Yöntem

Tanım

öğesine XsltArgumentList bir parametre ekler ve ad alanı nitelenmiş adıyla ilişkilendirir.

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)

Parametreler

name
String

parametresiyle ilişkilendirilecek ad.

namespaceUri
String

parametresiyle ilişkilendirilecek ad alanı URI'si. Varsayılan ad alanını kullanmak için boş bir dize belirtin.

parameter
Object

Listeye eklenecek parametre değeri veya nesnesi.

Özel durumlar

namespaceUri veya null http://www.w3.org/1999/XSL/Transformşeklindedir.

name, W3C XML belirtimine göre geçerli bir ad değil.

ile namespaceUri ilişkilendirilmiş bir parametre zaten var.

Örnekler

Aşağıdaki örnek, AddParam geçerli tarih ve saati temsil eden bir parametre oluşturmak için yöntemini kullanır.

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

Örnekte giriş olarak aşağıdaki iki veri dosyası kullanılır.

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>

Açıklamalar

bir parameter W3C türüne karşılık gelir. Aşağıdaki tabloda XPath veya XSLT gibi W3C türleri ve corresponding.NET sınıfı gösterilmektedir.

W3C Türü Equivalent.NET Sınıfı (Tür)
String (XPath) String
Boolean (XPath) Boolean
Number (XPath) Double
Result Tree Fragment (XSLT) XPathNavigator
Node Set (XPath) XPathNodeIterator

XPathNavigator[]
Node* (XPath) XPathNavigator

*Bu, tek bir düğüm içeren bir düğüm kümesine eşdeğerdir.

Stil sayfasının içinden çağrılan parametre nesnesi yukarıdakilerden biri değilse, aşağıdaki kurallara göre dönüştürülür:

Diğer tüm türler hata oluşturur.

Şunlara uygulanır

Ayrıca bkz.