Я вызываю функцию C # из XSLT в Umbraco 4.7.1.
Моя функция возвращает значение свойства "tag" на текущем узле, проблема в том, что мой вывод закодирован.
В xsltExtensions.config я добавил расширение сборки.
В моем XSLT я получаю значение моей функции
<xsl:value-of select="TagHelpers:ShowAllTags()" />
Моя функция C #:
public string ShowAllTags()
{
var node = new DynamicNode(Node.GetCurrent());
var html = new StringBuilder();
if (node.HasProperty("tags"))
{
var tagList = node.GetPropertyValue("tags");
if(tagList.Length > 0)
{
foreach (var tag in tagList)
{
html.Append(HttpUtility.HtmlEncode(tag));
}
}
}
return html.ToString();
Мой вывод выглядит так:
% 3c% 3fxml + версия% 3d% 221,0% 22% 3f% 3e% 0D% 0A% 3cClientValue + XMLNS% 3axsd% 3d% 22http% 3a% 2f% 2fwww.w3.org% 2f2001% 2fXMLSchema% 22 + XMLNS% 3axsi% 3d% 22http% 3a% 2f% 2fwww.w3.org% 2f2001% 2fXMLSchema инстанции% 22% 3e% 0d% 0a ++% 3cTags% 3e% 0d% 0a ++++% 3cstring% 3efritidsjob% 3c% 2fstring% 3e% 0d% 0a ++++% 3cstring% 3elo% 3c% 2fstring% 3e% 0d% 0a ++++% 3cstring% 3ejobpatrulje% 3c% 2fstring% 3e% 0d% 0a ++% 3c% 2fTags% 3e% 0d% 0a ++% 3cGroupName% 3edefault% 3c% 2fGroupName% 3e% 0D% 0A% 3c% 2fClientValue% 3e
Но должно быть:
fritidsjob, jobpatrulje, lo