2013-04-16 4 views
1

Я использую Saxon, чтобы выполнить преобразование XML-документа в моем приложении .NET. Я передаю параметр моему документу xslt, но я не знаю, как его использовать в моем шаблоне.Использование параметра, переданного в таблицу стилей xslt

Вот что я сделал до сих пор:

var zipcode = _db.AXCustomers.FirstOrDefault(x => x.ACCOUNTNUM == accNo).ZIPCODE; 
transformer.SetParameter(new QName("CustomerZipCode"), new XdmAtomicValue(zipcode)); 

Тогда в моем xslt документе я, указав параметр следующим образом:

<xsl:template match="/"> 
    <xsl:param name="CustomerZipCode" /> 

Но когда я пытаюсь не использовать параметр, ничего появляется. Я использую его следующим образом:

<xsl:value-of select="substring-before($CustomerZipCode, ' ')"/> 

Но ничего не выводится, даже если мой zipcode действительно содержит значение

ответ

1

Вы используете xsl:param внутри xsl:template элемента, то это означает, что парам для шаблона. Параметр, который вы передаете из .net-кода, является параметром трансформатора, а связанный с ним xsl:param должен быть размещен на верхнем уровне таблицы стилей в элементе xsl:stylesheet.

+0

Отлично! Спасибо, подумал, что это просто! – CallumVass

Смежные вопросы