msxsl:script 要素内の CDATA セクション内でメソッドを宣言しなくても、既に GAC にある dll のメソッドにアクセスできますか?
これが私が望まないものの1つの例です:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude- result-prefixes="xsl in lang user" xmlns:in="http://www.composite.net/ns/transformation/input/1.0" xmlns:lang="http://www.composite.net/ns/localization/1.0" xmlns:f="http://www.composite.net/ns/function/1.0" xmlns="http://www.w3.org/1999/xhtml" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:user="urn:my-scripts">
<msxsl:script language="C#" implements-prefix="user">
<msxsl:assembly name="System.Web" />
<msxsl:using namespace="System.Web" />
<![CDATA[public string GetDate(string DateFormat){return DateTime.Now.ToString(DateFormat);}]]></msxsl:script>
<xsl:template match="/">
<sometag>
<xsl:value-of select="user:GetDate('dddd, dd MMMM yyyy')" />
</sometag>
</xsl:template>
</xsl:stylesheet>
関数を CDATA 内に配置する必要はありません。上記の例のように、dll を参照してテンプレート タグ内で関数を呼び出すことはできませんか?