XsltArgumentList.AddParam(String, String, Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
パラメーターを 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
が null
または http://www.w3.org/1999/XSL/Transform です。
name
が、W3C 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
この例では、次の 2 つのデータ ファイルを入力として使用します。
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>
注釈
は parameter
W3C 型に対応している必要があります。 次の表に、XPath または XSLT のいずれかの W3C 型と、corresponding.NET クラスを示します。
W3C 型 | Equivalent.NET クラス (型) |
---|---|
String (XPath) |
String |
Boolean (XPath) |
Boolean |
Number (XPath) |
Double |
Result Tree Fragment (XSLT) |
XPathNavigator |
Node Set (XPath) |
XPathNodeIteratorXPathNavigator[] |
Node * (XPath) |
XPathNavigator |
\* これは単一のノードを含むノード セットに相当します。
スタイル シート内から呼び出されるパラメーター オブジェクトが上記のいずれかでない場合は、次の規則に従って変換されます。
CLR 数値型は Double に変換されます。
IXPathNavigable 型は XPathNavigator に変換されます。
XPathNavigator[]
は に XPathNodeIterator変換されます。
その他の型はエラーになります。
適用対象
こちらもご覧ください
.NET