XsltArgumentList.AddParam(String, String, Object) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
öğ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) |
XPathNodeIteratorXPathNavigator[] |
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:
CLR sayısal türleri olarak Doubledönüştürülür.
IXPathNavigable türleri olarak XPathNavigatordönüştürülür.
XPathNavigator[]
öğesine dönüştürülür XPathNodeIterator.
Diğer tüm türler hata oluşturur.